订阅号 笔记记录开发 php,微信订阅号开发笔记(五)

1、用户管理//查询所有分组

public function queryGroups(){

$url = "https://api.weixin.qq.com/cgi-bin/groups/get?access_token=";

$url.=$this->getacctoken();

$result = $this->cget($url);

header("Content-type: text/html; charset=utf-8");

print_r($result);

}

//创建分组

public function createGroup(){

$url="https://api.weixin.qq.com/cgi-bin/groups/create?access_token=";

$url.=$this->getacctoken();

$postData=‘{"group":{"name":"test"}}‘;

$result = $this->cpost($url,$postData);

header("Content-type: text/html; charset=utf-8");

print_r($result);

}

//查询用户所在分组

public function queryGroup(){

$url="https://api.weixin.qq.com/cgi-bin/groups/getid?access_token=";

$url.=$this->getacctoken();

$postData=‘{"openid":"openId"}‘;

$result = $this->cpost($url,$postData);

header("Content-type: text/html; charset=utf-8");

print_r($result);

}

//修改分组名

public function updateGroup(){

$url="https://api.weixin.qq.com/cgi-bin/groups/update?access_token=";

$url.=$this->getacctoken();

$postData=‘{"group":{"id":100,"name":"atest"}}‘;

$result = $this->cpost($url,$postData);

header("Content-type: text/html; charset=utf-8");

print_r($result);

}

//移动用户分组

public function moveGroup(){

$url="https://api.weixin.qq.com/cgi-bin/groups/members/update?access_token=";

$url.=$this->getacctoken();

$postData=‘{

"openid": "openId",

"to_groupid": 100

}‘;

$result = $this->cpost($url,$postData);

header("Content-type: text/html; charset=utf-8");

print_r($result);

}

//获取用户基本信息

public function queryUserInfo(){

$url = "https://api.weixin.qq.com/cgi-bin/user/info?lang=zh_CN&access_token=";

$url.=$this->getacctoken();

$url.="&openid="."openId";

$result = $this->cget($url);

header("Content-type: text/html; charset=utf-8");

echo json_encode($result);

}

//获取关注者列表

public function queryUserList(){

//https://api.weixin.qq.com/cgi-bin/user/get?access_token=ACCESS_TOKEN&next_openid=NEXT_OPENID

$url = "https://api.weixin.qq.com/cgi-bin/user/get?access_token=";

$url.=$this->getacctoken();

$result = $this->cget($url);

$r = json_encode($result);

$next_openid=$r[‘next_openid‘];

if(!empty($next_openid)){

}

header("Content-type: text/html; charset=utf-8");

echo $r ;

}

2、网页授权获取用户基本信息

具体而言,网页授权流程分为四步:引导用户进入授权页面同意授权,获取code

通过code换取网页授权access_token(与基础支持中的access_token不同)

如果需要,开发者可以刷新网页授权access_token,避免过期

通过网页授权access_token和openid获取用户基本信息

public function index(){

//1、引导用户进入授权页面

$url = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=";

$redirect_uri="YOU URL";

$redirect_uri=urlencode($redirect_uri);

$url.=$redirect_uri."&response_type=code&scope=snsapi_userinfo&state=a#wechat_redirect";

$this->assign ( ‘userurl‘, $url );

$this->display();

}

public function success(){

//2、用户授权成功 获取code ,用code换取access_token

$code = I ( ‘get.code‘ );

//echo $code;

$geturl = "https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=";

$geturl.=$code."&grant_type=authorization_code";

$ch=curl_init();

curl_setopt($ch,CURLOPT_URL,$geturl);

curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);

curl_setopt($ch,CURLOPT_HEADER,0);

$output = curl_exec($ch);

curl_close($ch);

//echo json_decode($output,true);

$returnObj = json_decode($output,true);

//echo $returnObj[‘access_token‘];

//3、刷新access_token(如果需要)

//4、拉取用户信息(需scope为 snsapi_userinfo)

$geturl ="";

$geturl=" https://api.weixin.qq.com/sns/userinfo?access_token=";

$geturl.=$returnObj[‘access_token‘]."&openid=".$returnObj[‘openid‘]."&lang=zh_CN";

$ch=curl_init();

curl_setopt($ch,CURLOPT_URL,$geturl);

curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);

curl_setopt($ch,CURLOPT_HEADER,0);

$output = curl_exec($ch);

curl_close($ch);

//echo json_decode($output,true);

$userObj = json_decode($output,true);

$this->assign ( ‘userObj‘, $userObj );

$this->display();

}

原文:http://3409736.blog.51cto.com/3399736/1408372

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/527593.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

jqprint获取打印页数_高年级应用题40道,假期快给孩子打印练习吧!(含答案)...

1.王爷爷家养的4头奶牛每个星期产奶896千克,平均1头奶牛每天产多少奶呢?2.4辆汽车3次运水泥960袋,平均每辆汽车每次运水泥多少袋?3.水波小学每间教室有3个窗户,每个窗户安装12块玻璃,9间教室一共安装多少块…

cstring移除指定字符串_从String中移除空白字符的多种方式!?差别竟然这么大!...

作者 | Hollis来源 | Hollis字符串,是Java中最常用的一个数据类型了。我们在日常开发时候会经常使用字符串做很多的操作。比如字符串的拼接、截断、替换等。这一篇文章,我们介绍一个比较常见又容易被忽略的一个操作,那就是移除字符串中的空格…

php angular使用,如何使用angular.js PHP从mysql显示数据?

您好,您可以查看以下示例代码你的HTML页面:AngularJs Post Example: DevZone.co.in #dv1{border:1px solid #DBDCE9; margin-left:auto;margin-right:auto;width:220px;border-radius:7px;padding: 25px;}.info{border: 1px solid;margin: 10px 0px;padding:10px;co…

php业务的适用场景,根据业务场景寻找合适解决方案(PHP)?

系统环境:LinuxPHP 7.3ThinkPHP 6先说一下业务场景:订单创建成功之后,每一笔订单都需要进行统计及其他业务处理。如何及时发现处理失败的订单,然后进行补单处理。订单所产生佣金的处理。要解决以上问题,最简单的办法就…

matlab 遗传优化算法_转载 | 遗传算法解决TSP问题的MATLAB实现

问题定义:巡回旅行商问题给定一组n个城市和俩俩之间的直达距离,寻找一条闭合的旅程,使得每个城市刚好经过一次且总的旅行距离最短。TSP问题也称为货郎担问题,是一个古老的问题。最早可以追溯到1759年Euler提出的骑士旅行的问题。1…

php 如何配置 redis,php 如何设置redis

php设置redis的方法:首先安装redis服务及PHP redis驱动;然后打开php.ini文件;接着增加内容为“extensionredis.so”;最后重启php-fpm或apache即可。PHP 设置使用 Redis安装开始在 PHP 中使用 Redis 前, 我们需要确保已…

java数组有跨类建立对象_Java性能优化的45个细节(珍藏版)

点击上面 蓝色字体关注我们技术 / 架构 / 职场 / 面试 关注即送:4000G 架构师视频来源:http://t.cn/EiP42VF在JAVA程序中,性能问题的大部分原因并不在于JAVA语言,而是程序本身。养成良好的编码习惯非常重要,能够显著地…

java 数据纠错,纠错码简介

纠错码是个什么东西引出网络中的通信基于TCP和UDP两个通信协议, 这大家都知道的, 什么TCP的三次握手等等, 面试经常被问到. 三次握手是为了保证连接的正确建立. 但是, 在通信的时候, 你如何保证你的消息正确送达了呢? 有人说了, 有收到请求的响应包. 但我说的不是这个,比如说,…

dataframe修改数据_数据处理进阶pandas入门(一)

前言NumPy作为数据处理的利器,在对数据进行科学计算、存储处理大型矩阵等方面为我们带来了极大的方便,但对于更进一步的数据分析任务,文件操作等方面显得有些吃力。于是,作为NumPy的进阶库pandas应运而生,在实际应用中…

java6个人抽奖抽三个人,基于Java的抽奖逻辑

小组在做一个抽奖系统,现在给我分配到了抽奖逻辑这方面的实现。EMMM,拿到分配的时候是懵B的。老大给的需求图给的关键表结构DROP TABLE IF EXISTS dd_annual_meeting_check;CREATE TABLE dd_annual_meeting_check (check_id int(255) NOT NULL AUTO_INCR…

python自动化教程_Python 任务自动化工具 tox 教程

1、tox 能做什么? 细分的用途包括: 创建开发环境 运行静态代码分析与测试工具 自动化构建包 针对 tox 构建的软件包运行测试 检查软件包是否能在不同的 Python 版本/解释器中顺利安装 统一持续集成(CI)和基于命令行的测试 创建和部…

简单的python画图代码_python opencv如何实现简易画图板 python opencv实现简易画图板代码...

python opencv如何实现简易画图板?本篇文章小编给大家分享一下python opencv实现简易画图板代码,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看。 代码如下: # -*- coding: utf-8 -*- "…

php 添加inotify扩展,php inotify 扩展的安装

一、安装1) 从内核和目录里面查看是否支持inotify[rootnfs01 ~]# uname -r2.6.32-573.el6.x86_64[rootnfs01 ~]#** ls -l /proc/sys/fs/inotify/** -→主要查看下面有没有三个目录总用量 0-rw-r--r-- 1 root root 0 1月 21 13:03 max_queued_events-rw-r--r-- 1 root root…

简述python执行原理_Python程序的执行原理(1)(2)

Python程序的执行原理(1)(2) 1. 过程概述 Python先把代码(.py文件)编译成字节码,交给字节码虚拟机,然后虚拟机一条一条执行字节码指令,从而完成程序的执行。 2. 字节码 字节码在Python虚拟机程序…

matlab求RMSECV,CARS 用于matlab模式识别(分类和回归)的特征变量提取方法 联合开发网 - pudn.com...

CARS所属分类:Windows编程开发工具:matlab文件大小:3605KB下载次数:56上传日期:2018-07-01 12:19:16上 传 者:寒121说明: 用于matlab模式识别(分类和回归)的特征变量提取方法,竞争性…

python计算时间装饰器_python 写一个计算运行时间的装饰器

面试题之中的一个。 写一个装饰器wraps,它接收一个參数t。假设函数运行时间超过1秒,输出“bad”,否则输出“goods”。 首先,计算函数的运行时间: import time start time.clock() for i in range(1000000): pass end …

python文本特征选择,机器学习--特征选择(Python实现)

特征选择就是从原始特征中选取一些最有效的特征来降低维度,,提高模型泛化能力减低过拟合的过程,主要目的是剔除掉无关特征和冗余特征,选出最优特征子集;常见的特征选择方法可以分为3类:过滤式(filter)、包裹式(wrapper…

用python画风车_python接口自动化()一)(实现一款简单的接口自动化框架)

python接口自动化一(设计一款自己的接口自动化框架) 一、起因: 前面学习过了python接口requests来进行接口测试,但是在框架选择上还是选择的unittest。当接口数量不怎么多时还好,但是当接口的量上去了,一切…

系统新模块增加需要哪些步骤_防锈高效型干式地暖模块解决了装修施工配合的哪些难点?...

通过前面的讲解,我们知道铝板干式地暖末端应用于地暖、辐射冷暖等系统的技术优势非常明显,即省层高、省费用、效果好、空调舒适、业主使用满意度高等,随着水泥黄沙的大幅涨价,其成本优势也突显出来,越来越多的暖通公司…

python爬取网站数据步骤_python怎么爬取数据

在学习python的过程中,学会获取网站的内容是我们必须要掌握的知识和技能,今天就分享一下爬虫的基本流程,只有了解了过程,我们再慢慢一步步的去掌握它所包含的知识Python网络爬虫大概需要以下几个步骤: 一、获取网站的地…