php判断用户是否关注微信公众号


Posted in PHP onJuly 22, 2016

最近要做一个微信平台的投票活动,需要在关注公众号之后才能参与投票,那么,如何判断用户是否关注了公众号呢?

第一想法是,通过获取公众号的关注列表,然后搜索列表中是否有参与者的openid

但是马上发现一个问题,就是这种方法需要每次都要获取一下关注列表,而且,当公众号的粉丝比较多时,这种方法就比较吃力了。

下面使用php方法,判断用户是否关注了公众号:

<?php
    $access_token = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=XXXXXXXXXXXXXXXXXX&secret=XXXXXXXXXXXXXXXXXXXXXXXXXX";
    $access_msg = json_decode(file_get_contents($access_token));
    $token = $access_msg->access_token;
    $subscribe_msg = "https://api.weixin.qq.com/cgi-bin/user/info?access_token=$token&openid=$_GET[openid]";
    $subscribe = json_decode(file_get_contents($subscribe_msg));
    $gzxx = $subscribe->subscribe;
    //
    if($gzxx === 1){
     echo "已关注";
    }else{
    echo "未关注";
    
 }

下面是第二个代码案例

< ? 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自动加载的两种实现方法
Jun 21 PHP
linux下为php添加curl扩展的方法
Jul 29 PHP
PHP mail()函数使用及配置方法
Jan 14 PHP
单台服务器的PHP进程之间实现共享内存的方法
Jun 13 PHP
Yii2.0高级框架数据库增删改查的一些操作
Nov 16 PHP
php+ajax无刷新分页实例详解
Dec 07 PHP
Yii快速入门经典教程
Dec 28 PHP
PHP动态地创建属性和方法, 对象的复制, 对象的比较,加载指定的文件,自动加载类文件,命名空间
May 06 PHP
php实现有序数组打印或排序的方法【附Python、C及Go语言实现代码】
Nov 10 PHP
详解配置 Apache 服务器支持 PHP 文件的解析
Feb 15 PHP
详细解读php的命名空间(二)
Feb 21 PHP
laravel 创建命令行命令的图文教程
Oct 23 PHP
微信支付扫码支付php版
Jul 22 #PHP
php如何执行非缓冲查询API
Jul 22 #PHP
PHP面试常用算法(推荐)
Jul 22 #PHP
微信红包随机生成算法php版
Jul 21 #PHP
php集成动态口令认证
Jul 21 #PHP
Thinkphp3.2.3整合phpqrcode生成带logo的二维码
Jul 21 #PHP
微信随机生成红包金额算法php版
Jul 21 #PHP
You might like
用PHP函数解决SQL injection
2006/10/09 PHP
php5中类的学习
2008/03/28 PHP
使用PHP函数scandir排除特定目录
2014/06/12 PHP
PHP超牛逼无限极分类生成树方法
2015/05/11 PHP
Yii1.1中通过Sql查询进行的分页操作方法
2017/03/16 PHP
PHP远程连接oracle数据库操作实现方法图文详解
2019/04/11 PHP
jQuery.extend 函数详解
2012/02/03 Javascript
基于jquery的has()方法以及与find()方法以及filter()方法的区别详解
2013/04/26 Javascript
Jquery动态添加及删除页面节点元素示例代码
2014/06/16 Javascript
JS div匀速移动动画与变速移动动画代码实例
2019/03/26 Javascript
JavaScript学习教程之cookie与webstorage
2019/06/23 Javascript
vue cli3适配所有端方案的实现
2020/04/13 Javascript
详解JavaScript之ES5的继承
2020/07/08 Javascript
vue 实现图片懒加载功能
2020/12/31 Vue.js
python新手经常遇到的17个错误分析
2014/07/30 Python
在python中利用最小二乘拟合二次抛物线函数的方法
2018/12/29 Python
使用Python制作简单的小程序IP查看器功能
2019/04/16 Python
使用python爬取微博数据打造一颗“心”
2019/06/28 Python
通过python连接Linux命令行代码实例
2020/02/18 Python
Django通过json格式收集主机信息
2020/05/29 Python
python3.9实现pyinstaller打包python文件成exe
2020/12/13 Python
使用CSS实现弹性视频html5案例实践
2012/12/26 HTML / CSS
HTML5之消息通知的使用(Web Notification)
2018/10/30 HTML / CSS
艺术家策划的室内设计:Curious Egg
2019/03/06 全球购物
生产车间主任的个人自我鉴定
2013/10/25 职场文书
岗位职责的含义
2013/11/17 职场文书
商场促销活动方案
2014/02/08 职场文书
关于元旦的广播稿
2014/02/16 职场文书
代领毕业证委托书
2014/08/02 职场文书
继续教育个人总结
2015/03/03 职场文书
2015选调生工作总结
2015/07/24 职场文书
销售人员管理制度
2015/08/06 职场文书
2015中秋祝酒词
2015/08/12 职场文书
五年级语文教学反思
2016/03/03 职场文书
2019已经过半,你知道年中工作总结该怎么写吗?
2019/07/03 职场文书
一次SQL查询优化原理分析(900W+数据从17s到300ms)
2022/06/10 SQL Server