做微信开发,鉴于微信POST的消息是XML数据包,通过SimpleXMLElement Object获取的数据不好操作,需要转化为普通数组。
网上找了很多方法都不理想,发现通过json_decode和json_encode可以转化,遂分享给大家。
$postStr = '';$postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);$jsonStr = json_encode($postObj);$jsonArray = json_decode($jsonStr,true);print_r($jsonArray); 1348831860 1234567890123456
输出结果为:
Array( [ToUserName] => toUser [FromUserName] => fromUser [CreateTime] => 1348831860 [MsgType] => text [Content] => this is a test [MsgId] => 1234567890123456)
这样操作起来就容易多了。