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中使用Oracle数据库(1)
Oct 09 PHP
PHP 木马攻击防御技巧
Jun 13 PHP
php 需要掌握的东西 不做浮躁的人
Dec 28 PHP
深入理解PHP原理之错误抑制与内嵌HTML分析
May 02 PHP
解析PHP中的内存管理,PHP动态分配和释放内存
Jun 28 PHP
php弹出对话框实现重定向代码
Jan 23 PHP
CentOS下PHP7的编译安装及MySQL的支持和一些常见问题的解决办法
Dec 17 PHP
php正则判断是否为合法身份证号的方法
Mar 16 PHP
PHP读取CSV大文件导入数据库的实例
Jul 24 PHP
PHP使用curl_multi实现并发请求的方法示例
Apr 29 PHP
PHP中的self关键字详解
Jun 23 PHP
基于laravel Request的所有方法详解
Sep 29 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 各种排序算法实现代码
2009/08/20 PHP
搭建自己的PHP MVC框架详解
2017/08/16 PHP
Laravel框架自定义公共函数的引入操作示例
2019/04/16 PHP
PHP实现百度人脸识别
2019/05/06 PHP
jQuery ctrl+Enter shift+Enter实现代码
2010/02/07 Javascript
火狐下table中创建form导致两个table之间出现空白
2013/09/02 Javascript
qq悬浮代码(兼容各个浏览器)
2014/01/29 Javascript
手机端页面rem宽度自适应脚本
2015/05/20 Javascript
jQuery事件对象总结
2016/10/17 Javascript
javaScript基础详解
2017/01/19 Javascript
Vue.js对象转换实例
2017/06/07 Javascript
简单实现js轮播图效果
2017/07/14 Javascript
在vue中添加Echarts图表的基本使用教程
2017/11/22 Javascript
详解JavaScript 的变量
2019/03/08 Javascript
vue 源码解析之虚拟Dom-render
2019/08/26 Javascript
初学vue出现空格警告的原因及其解决方案
2019/10/31 Javascript
python发腾讯微博代码分享
2014/01/10 Python
python网络编程之数据传输UDP实例分析
2015/05/20 Python
scrapy-redis的安装部署步骤讲解
2019/02/27 Python
Python将列表数据写入文件(txt, csv,excel)
2019/04/03 Python
python3.7 sys模块的具体使用
2019/07/22 Python
详解Python并发编程之从性能角度来初探并发编程
2019/08/23 Python
Pytorch 多块GPU的使用详解
2019/12/31 Python
如何使用Cython对python代码进行加密
2020/07/08 Python
PyQt中使用QtSql连接MySql数据库的方法
2020/07/28 Python
python推导式的使用方法实例
2021/02/28 Python
美国球迷装备的第一来源:FOCO
2020/07/03 全球购物
物业管理公司实习生自我鉴定
2013/09/19 职场文书
机械化及自动化毕业生的自我评价分享
2013/11/06 职场文书
大众服装店创业计划书范文
2014/01/01 职场文书
企业安全生产月活动总结
2014/07/05 职场文书
2014年仓库管理员工作总结
2014/11/18 职场文书
2014年教学管理工作总结
2014/12/02 职场文书
医药公司开票员岗位职责
2015/04/15 职场文书
教师岗位说明书
2015/09/30 职场文书
2016个人廉洁自律承诺书
2016/03/25 职场文书