php中将SimpleXMLElement Object数组转化为普通数组

时间:2016-06-23 13:17:09 来源:互联网 作者: 神秘的大神 字体:

做微信开发,鉴于微信POST的消息是XML数据包,通过SimpleXMLElement Object获取的数据不好操作,需要转化为普通数组。

网上找了很多方法都不理想,发现通过json_decode和json_encode可以转化,遂分享给大家。

$postStr = '
  
  
   toUser
   
  
   fromUser
    
  
   1348831860
   
  
   text
   
  
   this is a test
   
  
   1234567890123456
   
 ';$postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);$jsonStr = json_encode($postObj);$jsonArray = json_decode($jsonStr,true);print_r($jsonArray);

输出结果为:

Array(    [ToUserName] => toUser    [FromUserName] => fromUser    [CreateTime] => 1348831860    [MsgType] => text    [Content] => this is a test    [MsgId] => 1234567890123456)

这样操作起来就容易多了。