最新php实现微信公众号主动推送消息功能大全
文件夹
人的记忆力会随着岁月的流逝而衰退,写作可以弥补记忆的不足,将曾经的人生经历和感悟记录下来,也便于保存一份美好的回忆。那么我们该如何写一篇较为完美的范文呢?以下是我为大家搜集的优质范文,仅供参考,一起来看看吧
通过学习借鉴朋友的实现方法进行整理,实现了php版的.微信公共平台消息主动推送,分享给大家供大家参考,具体内容如下,更多消息请关注应届毕业生网。
此方法是通过模拟登录微信公共平台的方法来实现的。
代码如下:
| 1< 2< 3< 4< 5< 6< 7< 8< 9< 10< 11< 12< 13< 14< 15< 16< 17< 18< 19< 20< 21< 22< 23< 24< 25< 26< 27< 28< 29< 30< 31< 32< 33< 34< 35< 36< 37< 38< 39< 40< 41< 42< 43< 44< 45< 46< 47< 48< 49< 50< 51< 52 | //登录< private function login(){< $url = 'https:///cgi-bin/login?lang=zh_cn';< $this->send_data = array(< 'username' => $this->_account,< 'pwd' => md5($this->_password),< 'f' => 'json'< );< $this->referer = "https:///";< $this->getheader = 1;< $result = explode("\n",$this->curlpost($url));< foreach ($result as $key => $value) {< $value = trim($value);< if(preg_match('/"errcode": (.*)/i', $value,$match)){//获取token< switch ($match[1]) {< case -1:< die(json_encode(array('status'=>1,'errcode'=>$match[1],'msg'=>"系统错误")));< case -2:< die(json_encode(array('status'=>1,'errcode'=>$match[1],'msg'=>"帐号或密码错误")));< case -3:< die(urldecode(json_encode(array('status'=>1,'errcode'=>$match[1],'msg'=>urlencode("密码错误")))));< case -4:< die(json_encode(array('status'=>1,'errcode'=>$match[1],'msg'=>"不存在该帐户")));< case -5:< die(json_encode(array('status'=>1,'errcode'=>$match[1],'msg'=>"访问受限")));< case -6:< die(json_encode(array('status'=>1,'errcode'=>$match[1],'msg'=>"需要输入验证码")));< case -7:< die(json_encode(array('status'=>1,'errcode'=>$match[1],'msg'=>"此帐号已绑定私人微信号,不可用于公众平台登录")));< case -8:< die(json_encode(array('status'=>1,'errcode'=>$match[1],'msg'=>"邮箱已存在")));< case -32:< die(json_encode(array('status'=>1,'errcode'=>$match[1],'msg'=>"验证码输入错误")));< case -200:< die(json_encode(array('status'=>1,'errcode'=>$match[1],'msg'=>"因频繁提交虚假资料,该帐号被拒绝登录")));< case -94:< die(json_encode(array('status'=>1,'errcode'=>$match[1],'msg'=>"请使用邮箱登陆")));< case 10:< die(json_encode(array('status'=>1,'errcode'=>$match[1],'msg'=>"该公众会议号已经过期,无法再登录使用")));< case 0:< $this->userfakeid = $this->getuserfakeid();< break;< }< }< if(preg_match('/^set-cookie:[\s]+([^=]+)=([^;]+)/i', $value,$match)){//获取cookie< $this->cookie .=$match[1].'='.$match[2].'; ';< }< if(preg_match('/"errmsg"/i', $value,$match)){//获取token< $this->token = rtrim(substr($value,strrpos($value,'=')+1),'",');< }< }< } |