判斷微信用戶是否關注微信號


1.先獲取公眾號的access_token

private $appid='';
private $secret='';
private function getAccessToken() { // access_token 應該全局存儲與更新,以下代碼以寫入到文件中做示例 $data = S('access_token'); if ($data['expire_time'] < time()) { // 如果是企業號用以下URL獲取access_token // $url = "https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=$this->appId&corpsecret=$this->appSecret"; $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=".$this->appid."&secret=".$this->secret; $res = json_decode($this->http_curl($url),true); $access_token = $res['access_token']; if ($access_token) { $data['expire_time'] = time() + 7000; $data['access_token'] = $access_token; S('access_token',$data); } } else { $access_token = $data['access_token']; } return $access_token; }

2.再根據"https://api.weixin.qq.com/cgi-bin/user/info?access_token=".$accessToken."&openid=".$openid;  調用curl,根據返回的結果集里的subscribe的狀態進行判斷

 1     public function attention(){
 2         $openid=$_SESSION['weinfo']['openid'];
 3         // 獲取公眾號的access_token,此access_token不是用戶授權后的access_token
 4         $accessToken = $this->getAccessToken();
 5         $subscribe_msg = "https://api.weixin.qq.com/cgi-bin/user/info?access_token=".$accessToken."&openid=".$openid;
 6         $subscribe_info = $this->http_curl($subscribe_msg);
 7         $subscribe_info = json_decode($subscribe_info);
 8         if($subscribe_info->subscribe){
 9             $msg['status']=1;
10         }else{
11             $msg['status']=0;
12         }
13         return $msg;
14     }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM