GET
GET = 'get'
Class User.
$http : \EasyWeChat\Core\Http
Http instance.
$accessToken : \EasyWeChat\Core\AccessToken
The request token.
__construct(\EasyWeChat\Core\AccessToken $accessToken)
Constructor.
\EasyWeChat\Core\AccessToken | $accessToken |
getHttp() : \EasyWeChat\Core\Http
Return the http instance.
setHttp(\EasyWeChat\Core\Http $http) : $this
Set the http instance.
\EasyWeChat\Core\Http | $http |
getAccessToken() : \EasyWeChat\Core\AccessToken
Return the current accessToken.
setAccessToken(\EasyWeChat\Core\AccessToken $accessToken) : $this
Set the request token.
\EasyWeChat\Core\AccessToken | $accessToken |
parseJSON(string $method, array $args) : \EasyWeChat\Support\Collection
Parse JSON from response and check error.
string | $method | |
array | $args |
| null
get(string $openId, string $lang = 'zh_CN') : \EasyWeChat\Support\Collection
Fetch a user by open id.
string | $openId | |
string | $lang |
batchGet(array $openIds, string $lang = 'zh_CN') : \EasyWeChat\Support\Collection
Batch get users.
array | $openIds | |
string | $lang |
lists(string $nextOpenId = null) : \EasyWeChat\Support\Collection
List users.
string | $nextOpenId |
remark(string $openId, string $remark) : \EasyWeChat\Support\Collection
Set user remark.
string | $openId | |
string | $remark |
group(string $openId) : \EasyWeChat\Support\Collection
Get user's group id.
string | $openId |
getGroup(string $openId) : \EasyWeChat\Support\Collection
Get user's group.
string | $openId |
blacklist(string|null $beginOpenid = null) : \EasyWeChat\Support\Collection
Get black list.
string|null | $beginOpenid |
batchBlock(array $openidList) : \EasyWeChat\Support\Collection
Batch block user.
array | $openidList |
batchUnblock(array $openidList) : \EasyWeChat\Support\Collection
Batch unblock user.
array | $openidList |
<?php
/*
* This file is part of the overtrue/wechat.
*
* (c) overtrue <i@overtrue.me>
*
* This source file is subject to the MIT license that is bundled
* with this source code in the file LICENSE.
*/
/**
* User.php.
*
* @author overtrue <i@overtrue.me>
* @copyright 2015 overtrue <i@overtrue.me>
*
* @see https://github.com/overtrue
* @see http://overtrue.me
*/
namespace EasyWeChat\User;
use EasyWeChat\Core\AbstractAPI;
/**
* Class User.
*/
class User extends AbstractAPI
{
const API_GET = 'https://api.weixin.qq.com/cgi-bin/user/info';
const API_BATCH_GET = 'https://api.weixin.qq.com/cgi-bin/user/info/batchget';
const API_LIST = 'https://api.weixin.qq.com/cgi-bin/user/get';
const API_GROUP = 'https://api.weixin.qq.com/cgi-bin/groups/getid';
const API_REMARK = 'https://api.weixin.qq.com/cgi-bin/user/info/updateremark';
const API_OAUTH_GET = 'https://api.weixin.qq.com/sns/userinfo';
const API_GET_BLACK_LIST = 'https://api.weixin.qq.com/cgi-bin/tags/members/getblacklist';
const API_BATCH_BLACK_LIST = 'https://api.weixin.qq.com/cgi-bin/tags/members/batchblacklist';
const API_BATCH_UNBLACK_LIST = 'https://api.weixin.qq.com/cgi-bin/tags/members/batchunblacklist';
/**
* Fetch a user by open id.
*
* @param string $openId
* @param string $lang
*
* @return \EasyWeChat\Support\Collection
*/
public function get($openId, $lang = 'zh_CN')
{
$params = [
'openid' => $openId,
'lang' => $lang,
];
return $this->parseJSON('get', [self::API_GET, $params]);
}
/**
* Batch get users.
*
* @param array $openIds
* @param string $lang
*
* @return \EasyWeChat\Support\Collection
*/
public function batchGet(array $openIds, $lang = 'zh_CN')
{
$params = [];
$params['user_list'] = array_map(function ($openId) use ($lang) {
return [
'openid' => $openId,
'lang' => $lang,
];
}, $openIds);
return $this->parseJSON('json', [self::API_BATCH_GET, $params]);
}
/**
* List users.
*
* @param string $nextOpenId
*
* @return \EasyWeChat\Support\Collection
*/
public function lists($nextOpenId = null)
{
$params = ['next_openid' => $nextOpenId];
return $this->parseJSON('get', [self::API_LIST, $params]);
}
/**
* Set user remark.
*
* @param string $openId
* @param string $remark
*
* @return \EasyWeChat\Support\Collection
*/
public function remark($openId, $remark)
{
$params = [
'openid' => $openId,
'remark' => $remark,
];
return $this->parseJSON('json', [self::API_REMARK, $params]);
}
/**
* Get user's group id.
*
* @param string $openId
*
* @return \EasyWeChat\Support\Collection
*/
public function group($openId)
{
return $this->getGroup($openId);
}
/**
* Get user's group.
*
* @param string $openId
*
* @return \EasyWeChat\Support\Collection
*/
public function getGroup($openId)
{
$params = ['openid' => $openId];
return $this->parseJSON('json', [self::API_GROUP, $params]);
}
/**
* Get black list.
*
* @param string|null $beginOpenid
*
* @return \EasyWeChat\Support\Collection
*/
public function blacklist($beginOpenid = null)
{
$params = ['begin_openid' => $beginOpenid];
return $this->parseJSON('json', [self::API_GET_BLACK_LIST, $params]);
}
/**
* Batch block user.
*
* @param array $openidList
*
* @return \EasyWeChat\Support\Collection
*/
public function batchBlock(array $openidList)
{
$params = ['openid_list' => $openidList];
return $this->parseJSON('json', [self::API_BATCH_BLACK_LIST, $params]);
}
/**
* Batch unblock user.
*
* @param array $openidList
*
* @return \EasyWeChat\Support\Collection
*/
public function batchUnblock(array $openidList)
{
$params = ['openid_list' => $openidList];
return $this->parseJSON('json', [self::API_BATCH_UNBLACK_LIST, $params]);
}
}