选好一个能够嵌入微信接口开发权限的系统。理论上讲,全部的系统都是能够用来作微信接口的二次开发的,只要具有用户管理功能的系统。由于开发以后,还会涉及到一些微信的管理。我这里选取了onethink做为原始承载模板,用这个主要是基于如下考虑:tp3.2的框架,比较容易上手进行开发,在短期内,越快开发出一个版本对咱们越有利,拥有的功能很基础,功能基础,说明了能够进行大幅度改变开发。
这里对onethink的系统进行介绍下,能够发现的是对于绝大部分的系统,其实均可以从这套简单的系统演化过去,好比开始写的分销系统,api接口,通常的博客系统,包括电商系统。引入了钩子的概念,是tp官方推出的一个样板应用。
目录结构
Addons 钩子
Application 项目目录
Data 文档目录
Runtime 运行的时候的目录
Thinkphp Tp的核心目录
Uploads 上传目录
index.php 入口
install.php 安装文件
而后须要跳转到https://mp.weixin.qq.com去注册一个账号(微信开发者平台,须要进行身份认证)能够获取到一个AppID(应用ID)和一个AppSecret(应用密钥)。获取其余全部的信息以前,须要获取到对应的token(token是每一个开发者平台与对应的公众号惟一的识别码) https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET
由于token的获取次数天天有上限2000(并且token的有效期是2小时),读取到token以后,须要将其储存到某个地方(文件,数据库,缓存里面均可以)由于初期的读取量不大,我将其放在Runtime文件夹里面,直接用token.php命名。
为了更加方便内部和微信端进行调用开发,封装了一个直接调用接口的方法,读取微信的api和token,须要用json_encode($data)进行
public function getWeiXinData($key,$data) {
$url=$this->getWeiXinApi($key).$this->getWeixinToken();;
$data = json_encode($data);
$listArr = json_decode(post($url,$data),true);
if($listArr['errcode']!=0) {
$this->refreshTokenFile();
}
return $listArr;
}
读取到了对应的数据后,须要进行其余的业务逻辑处理。(例如须要把优惠券进行进行列表处理)
$data = array("offset"=>0,"count"=>10) ;
$res1 = $this-> getWeiXinData("cardBatchGet",$data);
$cardNum =count($res1['card_id_list']);
for($i=0;$i<$cardNum;$i++) {
$data =array("card_id"=>$res1['card_id_list'][$i]);
$cardinfo = $this-> getWeiXinData("cardGet",$data);
$list[]= $cardinfo['card'];
}
固然也能够进行其余的处理php