Update usermanage.lib.php

src
pvfho47bq 6 months ago
parent 8413a268a1
commit caf5d39b47

@ -1,161 +1,161 @@
<?php
namespace LaneWeChat\Core; // 定义命名空间表明这个类属于LaneWeChat模块的核心部分
class UserManage { // 定义一个名为UserManage的类用于用户管理功能
// 创建一个新的用户分组
namespace LaneWeChat\Core; // 定义命名空间为 LaneWeChat\Core表示该类属于 LaneWeChat 模块的核心部分
/**
* 用户管理类
*
* 该类用于管理微信公众号的用户信息,包括创建和管理用户分组、获取用户信息、设置用户备注等。
*/
class UserManage {
/**
* 创建一个新的用户分组
*
* @param string $groupName 分组名称
* @return mixed 返回创建分组的结果
*/
public static function createGroup($groupName) {
$accessToken = AccessToken::getAccessToken(); // 获取access_token
$queryUrl = 'https://api.weixin.qq.com/cgi-bin/groups/create?access_token=' . $accessToken; // 构建请求URL包含access_token
$data = '{"group":{"name":"' . $groupName . '"}}'; // 准备发送的数据,包含分组名称
return Curl::callWebServer($queryUrl, $data, 'POST'); // 发起POST请求调用Curl类的方法
}
// 获取所有用户分组列表
// 获取access_token用于验证API请求的合法性
$accessToken = AccessToken::getAccessToken();
// 构建请求URL包含access_token
$queryUrl = 'https://api.weixin.qq.com/cgi-bin/groups/create?access_token=' . $accessToken;
// 准备发送的数据,包含分组名称
$data = '{"group":{"name":"' . $groupName . '"}}';
// 发起POST请求调用Curl类的方法
return Curl::callWebServer($queryUrl, $data, 'POST');
}
/**
* 获取所有用户分组列表
*
* @return mixed 返回分组列表
*/
public static function getGroupList() {
$accessToken = AccessToken::getAccessToken(); // 获取access_token
$queryUrl = 'https://api.weixin.qq.com/cgi-bin/groups/get?access_token=' . $accessToken; // 构建请求URL包含access_token
$data = ''; // 不需要发送数据
return Curl::callWebServer($queryUrl, $data, 'GET'); // 发起GET请求调用Curl类的方法
}
// 根据OpenId获取用户所在的分组ID
// 获取access_token
$accessToken = AccessToken::getAccessToken();
// 构建请求URL包含access_token
$queryUrl = 'https://api.weixin.qq.com/cgi-bin/groups/get?access_token=' . $accessToken;
// 不需要发送数据
$data = '';
// 发起GET请求调用Curl类的方法
return Curl::callWebServer($queryUrl, $data, 'GET');
}
/**
* 根据OpenId获取用户所在的分组ID
*
* @param string $openId 用户的OpenId
* @return mixed 返回用户所在的分组ID
*/
public static function getGroupByOpenId($openId) {
$accessToken = AccessToken::getAccessToken(); // 获取access_token
$queryUrl = 'https://api.weixin.qq.com/cgi-bin/groups/getid?access_token=' . $accessToken; // 构建请求URL包含access_token
$data = '{"openid":"' . $openId . '"}'; // 准备发送的数据包含OpenId
return Curl::callWebServer($queryUrl, $data, 'POST'); // 发起POST请求调用Curl类的方法
}
// 编辑用户分组的名称
// 获取access_token
$accessToken = AccessToken::getAccessToken();
// 构建请求URL包含access_token
$queryUrl = 'https://api.weixin.qq.com/cgi-bin/groups/getid?access_token=' . $accessToken;
// 准备发送的数据包含OpenId
$data = '{"openid":"' . $openId . '"}';
// 发起POST请求调用Curl类的方法
return Curl::callWebServer($queryUrl, $data, 'POST');
}
/**
* 编辑用户分组的名称
*
* @param int $groupId 分组ID
* @param string $groupName 新的分组名称
* @return mixed 返回编辑分组名称的结果
*/
public static function editGroupName($groupId, $groupName) {
$accessToken = AccessToken::getAccessToken(); // 获取access_token
$queryUrl = 'https://api.weixin.qq.com/cgi-bin/groups/update?access_token=' . $accessToken; // 构建请求URL包含access_token
$data = '{"group":{"id":' . $groupId . ',"name":"' . $groupName . '"}}'; // 准备发送的数据包含分组ID和新名称
return Curl::callWebServer($queryUrl, $data, 'POST'); // 发起POST请求调用Curl类的方法
}
// 将用户移动到另一个分组
// 获取access_token
$accessToken = AccessToken::getAccessToken();
// 构建请求URL包含access_token
$queryUrl = 'https://api.weixin.qq.com/cgi-bin/groups/update?access_token=' . $accessToken;
// 准备发送的数据包含分组ID和新名称
$data = '{"group":{"id":' . $groupId . ',"name":"' . $groupName . '"}}';
// 发起POST请求调用Curl类的方法
return Curl::callWebServer($queryUrl, $data, 'POST');
}
/**
* 将用户移动到另一个分组
*
* @param string $openid 用户的OpenId
* @param int $to_groupid 目标分组ID
* @return mixed 返回移动用户的结果
*/
public static function editUserGroup($openid, $to_groupid) {
$accessToken = AccessToken::getAccessToken(); // 获取access_token
$queryUrl = 'https://api.weixin.qq.com/cgi-bin/groups/members/update?access_token=' . $accessToken; // 构建请求URL包含access_token
$data = '{"openid":"' . $openid . '","to_groupid":' . $to_groupid . '}'; // 准备发送的数据包含OpenId和目标分组ID
return Curl::callWebServer($queryUrl, $data, 'POST'); // 发起POST请求调用Curl类的方法
}
// 获取用户的详细信息
// 获取access_token
$accessToken = AccessToken::getAccessToken();
// 构建请求URL包含access_token
$queryUrl = 'https://api.weixin.qq.com/cgi-bin/groups/members/update?access_token=' . $accessToken;
// 准备发送的数据包含OpenId和目标分组ID
$data = '{"openid":"' . $openid . '","to_groupid":' . $to_groupid . '}';
// 发起POST请求调用Curl类的方法
return Curl::callWebServer($queryUrl, $data, 'POST');
}
/**
* 获取用户的详细信息
*
* @param string $openId 用户的OpenId
* @return mixed 返回用户的详细信息
*/
public static function getUserInfo($openId) {
$accessToken = AccessToken::getAccessToken(); // 获取access_token
$queryUrl = 'https://api.weixin.qq.com/cgi-bin/user/info?access_token=' . $accessToken . '&openid=' . $openId; // 构建请求URL包含access_token和OpenId
return Curl::callWebServer($queryUrl, '', 'GET'); // 发起GET请求调用Curl类的方法
}
// 获取公众号粉丝列表
public static function getFansList($next_openid='') {
$accessToken = AccessToken::getAccessToken(); // 获取access_token
if(empty($next_openid)){ // 如果没有提供next_openid
$queryUrl = 'https://api.weixin.qq.com/cgi-bin/user/get?access_token=' . $accessToken; // 构建请求URL包含access_token
}else{ // 如果提供了next_openid
$queryUrl = 'https://api.weixin.qq.com/cgi-bin/user/get?access_token=' . $accessToken . '&next_openid=' . $next_openid; // 构建请求URL包含access_token和next_openid
}
return Curl::callWebServer($queryUrl, '', 'GET'); // 发起GET请求调用Curl类的方法
}
// 设置用户的备注名
// 获取access_token
$accessToken = AccessToken::getAccessToken();
// 构建请求URL包含access_token和OpenId
$queryUrl = 'https://api.weixin.qq.com/cgi-bin/user/info?access_token=' . $accessToken . '&openid=' . $openId;
// 发起GET请求调用Curl类的方法
return Curl::callWebServer($queryUrl, '', 'GET');
}
/**
* 获取公众号粉丝列表
*
* @param string $next_openid 下一个OpenId用于分页获取粉丝列表
* @return mixed 返回粉丝列表
*/
public static function getFansList($next_openid = '') {
// 获取access_token
$accessToken = AccessToken::getAccessToken();
// 如果没有提供next_openid
if (empty($next_openid)) {
// 构建请求URL包含access_token
$queryUrl = 'https://api.weixin.qq.com/cgi-bin/user/get?access_token=' . $accessToken;
} else {
// 如果提供了next_openid
// 构建请求URL包含access_token和next_openid
$queryUrl = 'https://api.weixin.qq.com/cgi-bin/user/get?access_token=' . $accessToken . '&next_openid=' . $next_openid;
}
// 发起GET请求调用Curl类的方法
return Curl::callWebServer($queryUrl, '', 'GET');
}
/**
* 设置用户的备注名
*
* @param string $openId 用户的OpenId
* @param string $remark 用户的备注名
* @return mixed 返回设置备注名的结果
*/
public static function setRemark($openId, $remark) {
$accessToken = AccessToken::getAccessToken(); // 获取access_token
$queryUrl = 'https://api.weixin.qq.com/cgi-bin/user/info/updateremark?access_token=' . $accessToken; // 构建请求URL包含access_token
$data = json_encode(array('openid'=>$openId, 'remark'=>$remark)); // 准备发送的数据包含OpenId和备注名
return Curl::callWebServer($queryUrl, $data, 'POST'); // 发起POST请求调用Curl类的方法
}
// 获取网络状态
public static function getNetworkState() {
echo "WeixinJSBridge.invoke('getNetworkType',{},function(e){WeixinJSBridge.log(e.err_msg);});"; // 输出JavaScript代码用于在微信浏览器中调用微信JSSDK的getNetworkType方法
}
}
<?php
namespace LaneWeChat\Core; // 定义命名空间表明这个类属于LaneWeChat模块的核心部分
class UserManage { // 定义一个名为UserManage的类用于用户管理功能
// 创建一个新的用户分组
public static function createGroup($groupName) {
$accessToken = AccessToken::getAccessToken(); // 获取access_token用于验证API请求的合法性
$queryUrl = 'https://api.weixin.qq.com/cgi-bin/groups/create?access_token=' . $accessToken; // 构建请求URL包含access_token
$data = '{"group":{"name":"' . $groupName . '"}}'; // 准备发送的数据,包含分组名称
return Curl::callWebServer($queryUrl, $data, 'POST'); // 发起POST请求调用Curl类的方法
}
// 获取所有用户分组列表
public static function getGroupList() {
$accessToken = AccessToken::getAccessToken(); // 获取access_token
$queryUrl = 'https://api.weixin.qq.com/cgi-bin/groups/get?access_token=' . $accessToken; // 构建请求URL包含access_token
$data = ''; // 不需要发送数据
return Curl::callWebServer($queryUrl, $data, 'GET'); // 发起GET请求调用Curl类的方法
}
// 根据OpenId获取用户所在的分组ID
public static function getGroupByOpenId($openId) {
$accessToken = AccessToken::getAccessToken(); // 获取access_token
$queryUrl = 'https://api.weixin.qq.com/cgi-bin/groups/getid?access_token=' . $accessToken; // 构建请求URL包含access_token
$data = '{"openid":"' . $openId . '"}'; // 准备发送的数据包含OpenId
return Curl::callWebServer($queryUrl, $data, 'POST'); // 发起POST请求调用Curl类的方法
}
// 编辑用户分组的名称
public static function editGroupName($groupId, $groupName) {
$accessToken = AccessToken::getAccessToken(); // 获取access_token
$queryUrl = 'https://api.weixin.qq.com/cgi-bin/groups/update?access_token=' . $accessToken; // 构建请求URL包含access_token
$data = '{"group":{"id":' . $groupId . ',"name":"' . $groupName . '"}}'; // 准备发送的数据包含分组ID和新名称
return Curl::callWebServer($queryUrl, $data, 'POST'); // 发起POST请求调用Curl类的方法
}
// 将用户移动到另一个分组
public static function editUserGroup($openid, $to_groupid) {
$accessToken = AccessToken::getAccessToken(); // 获取access_token
$queryUrl = 'https://api.weixin.qq.com/cgi-bin/groups/members/update?access_token=' . $accessToken; // 构建请求URL包含access_token
$data = '{"openid":"' . $openid . '","to_groupid":' . $to_groupid . '}'; // 准备发送的数据包含OpenId和目标分组ID
return Curl::callWebServer($queryUrl, $data, 'POST'); // 发起POST请求调用Curl类的方法
}
// 获取用户的详细信息
public static function getUserInfo($openId) {
$accessToken = AccessToken::getAccessToken(); // 获取access_token
$queryUrl = 'https://api.weixin.qq.com/cgi-bin/user/info?access_token=' . $accessToken . '&openid=' . $openId; // 构建请求URL包含access_token和OpenId
return Curl::callWebServer($queryUrl, '', 'GET'); // 发起GET请求调用Curl类的方法
}
// 获取公众号粉丝列表
public static function getFansList($next_openid='') {
$accessToken = AccessToken::getAccessToken(); // 获取access_token
if(empty($next_openid)){ // 如果没有提供next_openid
$queryUrl = 'https://api.weixin.qq.com/cgi-bin/user/get?access_token=' . $accessToken; // 构建请求URL包含access_token
}else{ // 如果提供了next_openid
$queryUrl = 'https://api.weixin.qq.com/cgi-bin/user/get?access_token=' . $accessToken . '&next_openid=' . $next_openid; // 构建请求URL包含access_token和next_openid
}
return Curl::callWebServer($queryUrl, '', 'GET'); // 发起GET请求调用Curl类的方法
}
// 设置用户的备注名
public static function setRemark($openId, $remark) {
$accessToken = AccessToken::getAccessToken(); // 获取access_token
$queryUrl = 'https://api.weixin.qq.com/cgi-bin/user/info/updateremark?access_token=' . $accessToken; // 构建请求URL包含access_token
$data = json_encode(array('openid'=>$openId, 'remark'=>$remark)); // 准备发送的数据包含OpenId和备注名
return Curl::callWebServer($queryUrl, $data, 'POST'); // 发起POST请求调用Curl类的方法
}
// 获取网络状态
// 获取access_token
$accessToken = AccessToken::getAccessToken();
// 构建请求URL包含access_token
$queryUrl = 'https://api.weixin.qq.com/cgi-bin/user/info/updateremark?access_token=' . $accessToken;
// 准备发送的数据包含OpenId和备注名
$data = json_encode(array('openid' => $openId, 'remark' => $remark));
// 发起POST请求调用Curl类的方法
return Curl::callWebServer($queryUrl, $data, 'POST');
}
/**
* 获取网络状态
*
* 输出JavaScript代码用于在微信浏览器中调用微信JSSDK的getNetworkType方法
*/
public static function getNetworkState() {
echo "WeixinJSBridge.invoke('getNetworkType',{},function(e){WeixinJSBridge.log(e.err_msg);});"; // 输出JavaScript代码用于在微信浏览器中调用微信JSSDK的getNetworkType方法
// 输出JavaScript代码
echo "WeixinJSBridge.invoke('getNetworkType',{},function(e){WeixinJSBridge.log(e.err_msg);});";
}
}
命名空间声明namespace LaneWeChat\Core; 定义了类的命名空间表明这个类属于LaneWeChat模块的核心部分。
类定义class UserManage 定义了一个用于用户管理功能的类。
createGroup方法创建一个新的用户分组获取 access_token 并构建请求URL发送POST请求。
getGroupList方法获取所有用户分组列表获取 access_token 并构建请求URL发送GET请求。
getGroupByOpenId方法根据OpenId获取用户所在的分组ID获取 access_token 并构建请求URL发送POST请求。
editGroupName方法编辑用户分组的名称获取 access_token 并构建请求URL发送POST请求。
editUserGroup方法将用户移动到另一个分组获取 access_token 并构建请求URL发送POST请求。
getUserInfo方法获取用户的详细信息获取 access_token 并构建请求URL发送GET请求。
getFansList方法获取公众号粉丝列表获取 access_token 并构建请求URL发送GET请求。
setRemark方法设置用户的备注名获取 access_token 并构建请求URL发送POST请求。
getNetworkState方法获取网络状态输出JavaScript代码用于在微信浏览器中调用微信JSSDK的 getNetworkType 方法。
Loading…
Cancel
Save