一个简单xml数据转换为数组的方法

本人用easywechat做微信回复图文,从数据库中拿到的数据直接是xml拼好的数据,但是框架只有自带的获取xml格式的语句,所有需要将xml数据中所需要的数据拿出来用来拼接。

搜了好多资料说的都很麻烦。ps:可能是我水平不够;-)

ok,废话不多说, 上代码:

// 以这个xml数据串为例
$xml = "<item><Title><![CDATA[亲爱的顾客:]]></Title><Content><![CDATA[]]></Content><Description><![CDATA[]]>
</Description><PicUrl><![CDATA[http://kantj.kxun.com/Uploads/Material/Manage/45c48cce2e2d7fbdea1afc51c7c6ad26/2229798344@qq.com_1400140887.jpg]]>
</PicUrl><Url><![CDATA[http://kantj.kxun.com/weixin.php/Webapp/entrance?merchantid=9]]></Url></item>","<item><Title><![CDATA[欢迎关注山姆之家~!]]></Title>
<Content><![CDATA[]]></Content><Description><![CDATA[]]></Description><PicUrl><![CDATA[http://kantj.kxun.com/Uploads/Material/Manage/45c48cce2e2d7fbdea1afc51c7c6ad26/2229798344@qq.com_1400138478.jpg]]></PicUrl><Url><![CDATA[]]>
</Url></item>"; // 该函数将xml数据转换为Simplement格式 // 第三个参数代表将将CDATA节点合并为TEXT节点,否则CDATA解析为空 $xmls = simplexml_load_string($xml, 'SimpleXMLElement', LIBXML_NOCDATA); //将该数据转换为数组 $arr = json_decode(json_encode($xmls), true); var_dump($arr);

 最后,你就能看到转换出的数组了O(∩_∩)O哈哈~

原文地址:https://www.cnblogs.com/lxlry/p/6249397.html