>[info] 項目開發完成之前,公眾號本身就有[用戶](https://www.easywechat.com/4.x/official-account/user.html)的情況是存在的,這時候就要拉取[用戶](https://www.easywechat.com/4.x/official-account/user.html)到數據庫了,相關代碼如下所示:
##### 執行完以下方法就完事,想看結果就把我打印的部分的注釋打開即可
~~~
/**
* 第一次拉取公眾號關注用戶到數據庫
* /api/Easycenter/get_wx_user
* 必須要獲得權限
*/
public function get_wx_user()
{
$app = $this->app;
$list = $app->user->list($nextOpenId = null);
if ($list) {
$openlist = $list['data']['openid'];
//$userlist = [];
if ($openlist) {
foreach ($openlist as $k => $v) {
$ck = \app\admin\model\User::where(['openid' => $v])->find();
if (!$ck) {
$userinfo = $app->user->get($v);
//array_push($userlist, $userinfo);
$user = new \app\admin\model\User();
$user->data([
'username' => $userinfo['nickname'],
'nickname' => $userinfo['nickname'],
'openid' => $v,
'status' => 'hidden',
'avatar' => $userinfo['headimgurl'],
]);
$user->save();
}
}
}
//echo "<pre>";
//var_dump($userlist);
//echo "</pre>";
}
// $this->success('', $this->app->user->list($nextOpenId = null));
}
~~~