微信公众平台开发教程⑥ 微信开发集成类的使用(2)

①. 参考配置截图

②. 注意匹配对应目录以及令牌

/**
 * 微信开发配置控制器
 * Class WeixinController
 * @package M\Controller
 */
class WeixinController extends Controller
{
 public function index()
 {
 import('Org.Wechat.Weixin');
 //参数传值 token、AppID、AppSecert
 $wechat = new \Weixin('zxxxi', 'wxxxxxxxxx89', 'efxxxxxxxxxxxxxxxxxxxxxxxb7');
 if (!isset($_GET['echostr'])) {
  //TODO 调用响应消息函数 自动回复
  $wechat->responseMsg();
 } else {
  //实现网址接入,调用验证消息函数
  $wechat->valid();
 }
 }
}

③. 必要文件上传

    微信公众平台近期发现规定需要在相应域名的根目录下上传文件,具体可从公众号下载。

 

二. 请求授权登录,获取微信用户信息

①. 代码参考

    下面是本人摘抄并精简的部分代码,具体的业务逻辑需要自己相应进行补充或删减

import('Org.Wechat.Weixin');
//参数传值 token、AppID、AppSecert
$wechat=new \Weixin('zxxxxi','wxxxxxxxxxxxxx9','efxxxxxxxxxxxxxxxxxxxxxxxxxxxx7');
//可理解为这是当下的链接地址
$url = "http://www.xxxxx.com".$_SERVER['REQUEST_URI'];
//TODO 判断 memcache是否有值,是否过期 (此处只是一个判断举例)
if(!S(session('XXXNAME').'_NAMEID')){
 if(!$_GET['code']){
 $redirect_uri = $url;
 $urls=$wechat->getOauthRedirect($redirect_uri);
 header("Location:".$urls);
 die;
 }
}
$reT=$wechat->getOauthAccessToken();
//TODO 如果获得 token值
if($reT){
 $openid = $reT['openid'];
 $user_info = $wechat->getOauthUserinfo($reT['access_token'],$openid);
 //查询数据库是否存在
 $userData = M('users')
 ->where("openid = '$openid'")
 ->Field('user_id,user_name,abnormal')
 ->find();
 if ($userData['user_id']) {
 //执行操作 或者跳转页面
 header("Location:???????");
 }else{
 //没有帐号需要转到用户名填写页面来完成授权
 $maxuid = M('users')->max('user_id');
 $user['openid'] = $openid;
 $user['nickname'] = $user_info['nickname'];
 $user['sex'] = $user_info['sex'];
 $user['reg_time'] = time();
 $user['user_img'] = $user_info['headimgurl'];
 //TODO 进行新用户的添加
 $addTag = add('users',$user);
 }
}else{
//重新跳转,或其他操作...
}
      

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/5964.html