首页 > 代码库 > XML消息解析_php
XML消息解析_php
初识php——微信消息处理
1 <?php 2 3 $test = new weixin(); 4 $test->Message(); 5 6 class weixin{ 7 public function Message(){ 8 $postStr = $GLOBALS["HTTP_RAW_POST_DATA"]; 9 if (!empty($postStr)){10 $postObj = simplexml_load_string($postStr, ‘SimpleXMLElement‘, LIBXML_NOCDATA);11 $fromUsername = $postObj->FromUserName;12 $toUsername = $postObj->ToUserName;13 $createTime = trim($postObj->CreateTime);14 $createtime = date(‘Y/m/d H:i:s‘, $createTime); 15 $msgType = trim($postObj->MsgType);16 $result = "FromUserName(来自):{$fromUsername}\r\n"17 ."ToUserName(发送至):{$toUsername}\r\n"18 ."CreateTime(时间):{$createtime}\r\n"19 ."MsgType(消息类型):{$msgType}\r\n";20 switch ($msgType){21 case "event":22 $result = $result.$this->receiveEvent($postObj);23 break;24 case "text":25 $result = $result.$this->receiveText($postObj);26 break;27 }28 echo "原始消息\r\n";29 echo $postStr ;30 echo "\r\n\r\n解析结果\r\n";31 echo $result;32 }33 else{34 echo "";35 exit;36 }37 }38 39 private function receiveEvent($postObj){40 $event = $postObj->Event;41 $eventKey = $postObj->EventKey;42 $result = "Event(事件):{$event}\r\n"43 ."EventKey(事件值):{$eventKey}";44 return $result;45 }46 47 private function receiveText($postObj){48 $keyword = trim($postObj->Content); 49 $msgId = $postObj->MsgId;50 $result = "Content(文本内容):{$keyword}\r\n"51 ."MsgId(文本消息标识号):{$msgId}";52 return $result;53 }54 }55 56 ?>
解析结果:
(1) 菜单单击事件消息解析:
(2)文本消息解析:
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。