重庆小潘seo博客

当前位置:首页 > 重庆网络营销 > 小潘杂谈 >

小潘杂谈

微信开发系列教程(2)

时间:2020-09-10 14:30:06 作者:重庆seo小潘 来源:
简答的自动回复消息完成了,有很多人都不知道关注自动发送给用户消息是怎么实现的,那么我今天分享一下关注成功后自动发送消息的实现。 看到微信api里面也有介绍到事件推送,那么这个关注事件是如何使用的呢? 今天不废话,直接上代码:?phpdefine(TOKEN, we

简答的自动回复消息完成了,有很多人都不知道关注自动发送给用户消息是怎么实现的,那么我今天分享一下关注成功后自动发送消息的实现。

看到微信api里面也有介绍到事件推送,那么这个关注事件是如何使用的呢? 今天不废话,直接上代码:<?phpdefine("TOKEN", "weixin");$wechatObj = new wechatCallbackapiTest();$wechatObj->responseMsg();class wechatCallbackapiTest {public function responseMsg() {$postStr = $GLOBALS["HTTP_RAW_POST_DATA"];if(!empty($postStr)) {$postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);$RX_TYPE = trim($postObj->MsgType);switch($RX_TYPE) {case "text" :$resultStr = $this->receiveText($postObj);break;case "event" :$resultStr = $this->receiveEvent($postObj);break;default :$resultStr = "unknow msg type: " . $RX_TYPE;break;}echo $resultStr;} else {echo "";exit();}}private function receiveText($object) {if (!empty($object)){$fromUsername = $object->FromUserName;$toUsername = $object->ToUserName;$keyword = trim($object->Content);$time = time();//自动回复图文消息$textTpl = "<xml><ToUserName><![CDATA[%s]]></ToUserName><FromUserName><![CDATA[%s]]></FromUserName><CreateTime>%s</CreateTime><MsgType><![CDATA[%s]]></MsgType><ArticleCount>3</ArticleCount><Articles><item><Title><![CDATA[测试标题1]]></Title><Description><![CDATA[测试内容啊1!]]></Description><PicUrl><![CDATA[http://weixin.comsenz-service.com/20.jpg]]></PicUrl><Url><![CDATA[http://www.baidu.com]]></Url></item><item><Title><![CDATA[哈哈,标题]]></Title><Description><![CDATA[内容标题]]></Description><PicUrl><![CDATA[http://weixin.comsenz-service.com/540.png]]></PicUrl><Url><![CDATA[http://www.discuz.com]]></Url></item><item><Title><![CDATA[12345哈哈,标题]]></Title><Description><![CDATA[798465789内容标题]]></Description><PicUrl><![CDATA[http://weixin.comsenz-service.com/20.jpg]]></PicUrl><Url><![CDATA[http://www.google.com]]></Url></item></Articles><FuncFlag>1</FuncFlag></xml> ";if(!empty( $keyword )){$msgType = "news";//类型 news:图文消息、text:文本消息 event:事件$resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr);echo $resultStr;}else{echo "Input something...";}}else {echo "";exit;}}private function receiveEvent($object) {$contentStr = "";switch($object->Event) {case "subscribe" :$contentStr = "欢迎关注社区管家!我们可以常联系了!!";break;}$resultStr = $this->transmitText($object, $contentStr);return $resultStr;}private function transmitText($object, $content, $flag = 0) {$textTpl = "<xml><ToUserName><![CDATA[%s]]></ToUserName><FromUserName><![CDATA[%s]]></FromUserName><CreateTime>%s</CreateTime><MsgType><![CDATA[text]]></MsgType><Content><![CDATA[%s]]></Content><FuncFlag>%d</FuncFlag></xml>";$resultStr = sprintf($textTpl, $object->FromUserName, $object->ToUserName, time(), $content, $flag);return $resultStr;}}?>以上就是微信开发系列教程(2)的详细内容,更多请关注小潘博客其它相关文章!