微信公众号判断用户是否已关注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 相关文章推荐
解决中英文字符串长度问题函数
Jan 16 PHP
手把手教你使用DedeCms的采集的图文教程
Mar 11 PHP
台湾中原大学php教程孙仲岳主讲
Jan 07 PHP
php array_merge下进行数组合并的代码
Jul 22 PHP
php mssql 数据库分页SQL语句
Dec 16 PHP
用sql命令修改数据表中的一个字段为非空(not null)的语句
Jun 04 PHP
利用PHP+JS实现搜索自动提示(实例)
Jun 09 PHP
php制作unicode解码工具(unicode编码转换器)代码分享
Dec 24 PHP
PHP字符串中特殊符号的过滤方法介绍
Feb 18 PHP
php发送get、post请求的6种方法简明总结
Jul 08 PHP
php自定义分页类完整实例
Dec 25 PHP
PHP有序表查找之插值查找算法示例
Feb 10 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
基于mysql的论坛(7)
2006/10/09 PHP
php curl 登录163邮箱并抓取邮箱好友列表的代码(经测试)
2011/04/07 PHP
thinkphp实现面包屑导航(当前位置)例子分享
2014/05/10 PHP
Chrome Web App开发小结
2014/09/04 PHP
PHP图片处理之使用imagecopyresampled函数实现图片缩放例子
2014/11/19 PHP
PHP清除字符串中所有无用标签的方法
2014/12/01 PHP
PHP使用mysql_fetch_row查询获得数据行列表的方法
2015/03/18 PHP
PHP操作mysql数据库分表的方法
2016/06/09 PHP
深入理解Yii2.0乐观锁与悲观锁的原理与使用
2017/07/26 PHP
php使用curl获取header检测开启GZip压缩的方法
2018/08/15 PHP
jQuery+jqmodal弹出窗口实现代码分明
2010/06/14 Javascript
各浏览器对click方法的支持差异小结
2011/07/31 Javascript
50个比较实用jQuery代码段
2011/09/18 Javascript
jquery放大镜效果超漂亮噢
2013/11/15 Javascript
一个简单的jquery进度条示例
2014/04/28 Javascript
jQuery.form插件的使用及跨域异步上传文件
2016/04/27 Javascript
精彩的Bootstrap案例分享 重点在注释!(选项卡、栅格布局)
2016/07/01 Javascript
老生常谈combobox和combotree模糊查询
2017/04/17 Javascript
jQuery实现导航栏头部菜单项点击后变换颜色的方法
2017/07/19 jQuery
vue获取验证码倒计时组件
2019/08/26 Javascript
Jquery异步上传文件代码实例
2019/11/13 jQuery
django接入新浪微博OAuth的方法
2015/06/29 Python
Python 复平面绘图实例
2019/11/21 Python
Python3.7+tkinter实现查询界面功能
2019/12/24 Python
Python实现猜年龄游戏代码实例
2020/03/25 Python
HTML5 新表单类型示例代码
2018/03/20 HTML / CSS
智利最大的网上商店:Linio智利
2016/11/24 全球购物
丝芙兰中国官方商城:SEPHORA中国
2018/01/10 全球购物
Timberland法国官网:购买靴子、鞋子、衣服、夹克和配饰
2019/11/30 全球购物
linux下进程间通信的方式
2013/01/23 面试题
财会专业大学生求职信
2014/09/26 职场文书
出售房屋协议书范本
2014/10/06 职场文书
反腐倡廉主题教育活动总结
2015/05/07 职场文书
python之基数排序的实现
2021/07/26 Python
大型强子对撞机再次重启探索“第五种自然力”
2022/04/29 数码科技
MySQL中的 inner join 和 left join的区别解析(小结果集驱动大结果集)
2023/05/08 MySQL