>백엔드 개발 >PHP 튜토리얼 >php中将SimpleXMLElement Object数组转化为普通数组

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

WBOY
WBOY원래의
2016-06-23 13:17:091022검색

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

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

$postStr = '<xml> <ToUserName><![CDATA[toUser]]></ToUserName> <FromUserName><![CDATA[fromUser]]></FromUserName>  <CreateTime>1348831860</CreateTime> <MsgType><![CDATA[text]]></MsgType> <Content><![CDATA[this is a test]]></Content> <MsgId>1234567890123456</MsgId> </xml>';$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)

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

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.