您现在的位置: 365建站网 > 建站教程 > 微信公众平台开发 > 25.5.1同步用户关注列表

25.5.1同步用户关注列表

此节有 175 人学习过     参与评论

对于之前关注的用户,在系统开发完成之后,需要将其同步到系统中来。同步用户列表的代码如下所示。

 1 public function updateList(){
 2     //获取微信用户列表
 3     $weixin = new \weixin\Wxapi();
 4     $result = $weixin->get_user_list();
 5 
 6     //获取本地用户列表
 7     $openidlist = Db::name('user')->column('openid');
 8     // dump($openidlist);
 9     
10     //计算未更新用户列表
11     $intersection = array_diff($result["data"]["openid"], $openidlist);
12 
13     //同步入库
14     $data = array();
15     foreach ($intersection as &$openid) {
16         $data[] = array('openid'=>$openid);
17     }
18     $insertresult = Db::name('user')->insertAll($data);
19     
20     $this->success('更新了'.count($intersection).'个用户','index');
21 }

在上述代码中,先获取微信用户列表,该接口中使用了递归方式,当用户数超过1万时,再次调用下一组1万个用户的OpenID列表,依次类推。
接下来获取当前系统中存储的用户OpenID列表,并使用array_diff()函数计算出系统中未存储的用户OpenID列表。
最后使用Db类的insertAll方法将新用户记录一次性插入数据库表。

如对本文有疑问,请提交到交流论坛,广大热心网友会为你解答!! 点击进入论坛


发表评论 (175人查看0条评论)
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
用户名: 验证码: 点击我更换图片
最新评论
------分隔线----------------------------
微信公众平台开发目录