php获取xml cdata_PHP解析带CDATA的XML方法
有好多xml格式的数据是带有CDATA的,如果开发过微信公众号的朋友应该会有很深的感触,那么里面的内容应该如何解析呢?假设有一个xml文件如下:DATA[FromUser]]>123456789sgType>为了便于操作,我们假设$str的内容就是上面这段XML。解决思路很简单:先去掉"cdata",然后直接取对应字符串的值,php代码如下:$obj=simplexml_load_..
有好多xml格式的数据是带有CDATA的,如果开发过微信公众号的朋友应该会有很深的感触,那么里面的内容应该如何解析呢?
假设有
一个xml文件如下:
DATA[FromUser]]>
123456789
sgType>
为了便于操作,我们假设$str的内容就是上面这段XML。
解决思路很简单:先去掉"cdata",然后直接取对应字符串的值,php代码如下:$obj = simplexml_load_string($str, 'SimpleXMLElement', LIBXML_NOCDATA);
或者:$obj = simplexml_load_string($str, null, LIBXML_NOCDATA);
使用print_r打印$obj的结果如下:SimpleXMLElement Object
(
[ToUserName] => toUser
[Fr
omUserName] => FromUser
[CreateTime] => 123456789
[MsgType] =>&nb
sp;event
[Event] => subscribe
)echo $obj->ToUserName; //
获取"ToUserName"对应的值/**
* 测试xml读取
cdata
*/
function xml()
{
$str = "
ser]]>
eTime>123456789
&l
t;![CDATA[subscribe]]>
";
$obj = simplexml_load_string($str, &
#39;SimpleXMLElement', LIBXML_NOCDATA);
return $obj;
}
print_r(xml());
赶快试一下看看是不是能读出来了喵
~
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)