この記事は主に、ユーザーがWeChatパブリックアカウントに注目しているかどうかを判断するためのPHPについて詳しく紹介しています。興味のある友人はそれを参照してください
最近、WeChatプラットフォームで投票イベントを行う予定です。公開アカウントを持っている場合にのみ投票に参加できることに注意する必要があります。では、ユーザーが公開アカウントをフォローしているかどうかを判断するにはどうすればよいでしょうか。
最初のアイデアは、公式アカウントのウォッチリストを取得し、リストに参加者のopenidがあるかどうかを検索することです。
しかし、すぐに問題が見つかりました。この方法では毎回ウォッチリストを取得する必要があり、公式アカウントに多くのファンがいる場合、この方法はより困難になるということです。
以下は、PHP メソッドを使用して、ユーザーがパブリック アカウントをフォローしているかどうかを判断します:
<?php $access_token = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=XXXXXXXXXXXXXXXXXX&secret=XXXXXXXXXXXXXXXXXXXXXXXXXX"; $access_msg = json_decode(file_get_contents($access_token)); $token = $access_msg->access_token; $subscribe_msg = "https://api.weixin.qq.com/cgi-bin/user/info?access_token=$token&openid=$_GET[openid]"; $subscribe = json_decode(file_get_contents($subscribe_msg)); $gzxx = $subscribe->subscribe; // if($gzxx === 1){ echo "已关注"; }else{ echo "未关注"; }
以下は 2 番目のコード ケースです
< ? php $access_token = $this - > _getAccessToken(); $subscribe_msg = 'https://api.weixin.qq.com/cgi-bin/user/info?access_token='.$access_token.'&openid='.$_SESSION['wecha_id']; $subscribe = json_decode($this - > curlGet($subscribe_msg)); $zyxx = $subscribe - > subscribe; if ($zyxx !== 1) { echo'未关注!'; } private function _getAccessToken() { $where = array('token' = > $this - > token); $this - > thisWxUser = M('Wxuser') - > where($where) - > find(); $url_get = 'https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid='.$this - > thisWxUser['appid'].'&secret='.$this - > thisWxUser['appsecret']; $json = json_decode($this - > curlGet($url_get)); if (!$json - > errmsg) { } else { $this - > error('获取access_token发生错误:错误代码'.$json - > errcode.',微信返回错误信息:'.$json - > errmsg); } return $json - > access_token; } ? >
概要: 上記は内容全体です。この記事が皆さんの勉強に役立つことを願っています。
関連する推奨事項:
PHP の 2 次元配列重複排除アルゴリズムとグラフィックとテキストの説明
以上がユーザーが WeChat 公式アカウントをフォローしているかどうかを PHP で確認する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。