微信公众平台是个好东西,具体的就不说了,我直接说技术>_<
下图为目录结构一览:
平台功能:此次开发的平台是面向多微信公众号、微信多公众号主(下面简称号主)的第三方管理平台。功能全部开发完毕后,号主通过注册、填写微信公众号配置(在腾讯的平台上设置,如Token、EncodingAESKey等)、填写本平台配置(配置Token、EncodingAESKey等),即可实现微信公众平台大部分业务功能(可能受微信公众号类型限制)。
逻辑划分:本平台基于ThinkPHP框架开发,按MVC三层划分。
Home模块的Controller控制器实现本平台的业务逻辑;
Home模块的Model模型实现数据的验证与过滤;
templates视图提供所有页面的模板,预留多主题接口;
Common公共模块下的Tools工具类实现微信公众平台api功能;
控制器:
Api控制器:
class ApiController extends Controller { public function index(){ /*获取微信公众平台id*/ $id = I("get.id",0,"number_int"); /*实例化mp模型类*/ $mp = D("Mp")->where("mp_id={$id}")->find(); /*定义全局数组*/ $GLOBALS = array( 'mp' => array( 'Id' => $mp['mp_id'], 'Token' => $mp['mp_token'], 'valid' => $mp['mp_valid'], ), ); //dump($GLOBALS); /*实例化微信通信工具类*/ $wechatTool = new \Common\Tools\Wechat(); /*验证是否成为开发者*/ if($GLOBALS['mp']['valid']==0){ /*未验证,执行验证代码*/ if($wechatTool->valid()===true){ $data['mp_valid'] = 1; if(D("Mp")->where("mp_id={$GLOBALS['mp']['Id']}")->save($data)){ $returnMsg = "验证成功"; }else{ $returnMsg = "修改失败"; } }else{ $returnMsg = "验证失败"; } file_put_contents('/usr/www/wechat/valid.txt',"{$GLOBALS['mp']['Id']}:{$returnMsg}\n\n",FILE_APPEND); exit(); }elseif($GLOBALS['mp']['valid']==1){ /*正常模式*/ $wechatTool->responseMsg(); } } }
原文链接:基于ThinkPHP3的微信平台开发_1