微信公众号判断用户是否已关注php代码解析


Posted in PHP onJune 24, 2016

现在的活动,很多都引导用户关注公众号,才能参与到活动当中,那如何才能判断用户关注了公众号呢? 本文就为大家提供php代码,解决问题。

官方接口说明
获取用户基本信息(包括UnionID机制) 

http://mp.weixin.qq.com/wiki/14/bb5031008f1494a59c6f71fa0f319c66.html

1、只要有基础的access_token和用户openid就可以判断用户是否关注该公众号
2、利用的接口url为:https://api.weixin.qq.com/cgi-bin/user/info?access_token=$token&openid=$openid
3、判断接口返回的字段subscribe是否为1.【1关注,0未关注】

注:
1、判断用户登录的方式为静默授权,用户无感知,从而得到用户的openid;
2、判断用户登录,需要微信认证服务号的支持,订阅号不行; 

下面是代码案例

< ? php

$access_token = $this - > _getAccessToken();
$subscribe_msg = 'https://api.weixin.qq.com/cgi-bin/user/info?access_token='.$access_token.'&openid='.$_SESSION['wecha_id'];
$subscribe = json_decode($this - > curlGet($subscribe_msg));
$zyxx = $subscribe - > subscribe;

if ($zyxx !== 1) {
 echo'未关注!';
}
private function _getAccessToken() {
 $where = array('token' = > $this - > token);
 $this - > thisWxUser = M('Wxuser') - > where($where) - > find();
 $url_get = 'https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid='.$this - > thisWxUser['appid'].'&secret='.$this - > thisWxUser['appsecret'];
 $json = json_decode($this - > curlGet($url_get));
 if (!$json - > errmsg) {
 } else {
  $this - > error('获取access_token发生错误:错误代码'.$json - > errcode.',微信返回错误信息:'.$json - > errmsg);
 }
 return $json - > access_token;
}
? >

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
php&amp;java(二)
Oct 09 PHP
使用php4加速网络传输
Oct 09 PHP
PHP写MySQL数据 实现代码
Jun 15 PHP
PHP 编写大型网站问题集
May 07 PHP
php header Content-Type类型小结
Jul 03 PHP
解析php php_openssl.dll的作用
Jul 01 PHP
php实现在服务器端调整图片大小的方法
Jun 16 PHP
PHP实现通过get方式识别用户发送邮件的方法
Jul 16 PHP
详谈PHP中的密码安全性Password Hashing
Feb 04 PHP
Laravel学习教程之IOC容器的介绍与用例
Aug 15 PHP
Laravel获取所有的数据库表及结构的方法
Oct 10 PHP
laravel 解决路由除了根目录其他都404的问题
Oct 18 PHP
php微信开发之上传临时素材
Jun 24 #PHP
PHP微信开发之模板消息回复
Jun 24 #PHP
PHP微信开发之根据用户回复关键词\位置返回附近信息
Jun 24 #PHP
简单解析PHP程序的运行流程
Jun 23 #PHP
PHP微信开发之查询微信精选文章
Jun 23 #PHP
PHP微信开发之查询城市天气
Jun 23 #PHP
PHP微信开发之有道翻译
Jun 23 #PHP
You might like
使用PHP维护文件系统
2006/10/09 PHP
echo, print, printf 和 sprintf 区别
2006/12/06 PHP
使用PHP批量生成随机用户名
2008/07/10 PHP
php 编写安全的代码时容易犯的错误小结
2010/05/20 PHP
php输出表格的实现代码(修正版)
2010/12/29 PHP
drupal 代码实现URL重写
2011/05/04 PHP
ubuntu10.04配置 nginx+php-fpm模式的详解
2013/06/03 PHP
IIS安装Apache伪静态插件的具体操作图文
2013/07/01 PHP
php递归遍历删除文件的方法
2015/04/17 PHP
PHP入门教程之上传文件实例详解
2016/09/11 PHP
js 调整select 位置的函数
2008/02/21 Javascript
jquery.fileEveryWhere.js 一个跨浏览器的file显示插件
2011/10/24 Javascript
JS组件Bootstrap Table使用实例分享
2016/05/30 Javascript
JavaScript必知必会(二) null 和undefined
2016/06/08 Javascript
JavaScript 是什么意思
2016/09/22 Javascript
AngularJS表单基本操作
2017/01/09 Javascript
JavaScript实现三级联动效果
2017/07/15 Javascript
JS库之wow.js使用方法
2017/09/14 Javascript
判断滚动条滑到底部触发事件(实例讲解)
2017/11/15 Javascript
vue获取当前激活路由的方法
2018/03/17 Javascript
基于ionic实现下拉刷新功能
2018/05/10 Javascript
vue 2.8.2版本配置刚进入时候的默认页面方法
2018/09/21 Javascript
原生JS实现图片懒加载之页面性能优化
2019/04/26 Javascript
vue轻量级框架无法获取到vue对象解决方法
2019/05/12 Javascript
Python3 Random模块代码详解
2017/12/04 Python
浅谈Python中的私有变量
2018/02/28 Python
selenium+python 去除启动的黑色cmd窗口方法
2018/05/22 Python
Python中shapefile转换geojson的示例
2019/01/03 Python
python调用matplotlib模块绘制柱状图
2019/10/18 Python
借助HTML5 Canvas来绘制三角形和矩形等多边形的方法
2016/03/14 HTML / CSS
拉丁舞学习者的自我评价
2013/10/27 职场文书
护士毕业自我鉴定
2014/02/07 职场文书
企业安全生产承诺书
2014/05/22 职场文书
解除施工合同协议书
2014/10/17 职场文书
廉洁自律个人总结
2015/02/14 职场文书
投诉书格式范本
2015/07/02 职场文书