XML文件,如下
<xml>
<ToUserName><![CDATA[toUser]]></ToUserName>
<FromUserName><![CDATA[FromUser]]></FromUserName>
<CreateTime>123456789</CreateTime>
<MsgType><![CDATA[event]]></MsgType>
<Event><![CDATA[subscribe]]></Event>
</xml>
假设$str的内容就是上面这段XML。
解决思路很简单:先去掉”cdata”,然后直接转化为json,然后再解析json,然后直接取对应字符串的值,代码如下:
$obj = simplexml_load_string($str, 'SimpleXMLElement', LIBXML_NOCDATA);
$eJSON = json_encode($obj);
$dJSON = json_decode($eJSON);
$toUserName = $dJSON->ToUserName;//获取"ToUserName"对应的值

本文介绍了一种将XML文件转换为JSON格式的方法,并提供了具体的PHP代码实现。通过使用simplexml_load_string函数去除CDATA部分,再利用json_encode及json_decode完成转换过程。
282

被折叠的 条评论
为什么被折叠?



