You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

75 lines
4.7 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<?php
namespace LaneWeChat\Core; // 定义命名空间表明这个类属于LaneWeChat模块的核心部分
class UserManage{ // 定义一个名为UserManage的类用于用户管理功能
// 创建一个新的用户分组
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类的方法
}
// 获取所有用户分组列表
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类的方法
}
// 获取网络状态
public static function getNetworkState(){
echo "WeixinJSBridge.invoke('getNetworkType',{},function(e){WeixinJSBridge.log(e.err_msg);});"; // 输出JavaScript代码用于在微信浏览器中调用微信JSSDK的getNetworkType方法
}
}