猿问
下载APP

PHP:如何处理<![CDATA [使用SimpleXMLElement?

PHP:如何处理<![CDATA [使用SimpleXMLElement?

我注意到,当SimpleXMLElement在包含那些CDATA标签的文档上使用时,内容始终是NULL。我该如何解决?

另外,抱歉在这里发布有关XML的垃圾邮件。我一直试图让基于XML的脚本现在工作几个小时......

<content><![CDATA[Hello, world!]]></content>

如果您搜索“SimpleXMLElement cdata”,我尝试了第一次点击谷歌,但这不起作用。


RISEBY
浏览 52回答 3
3回答

偶然的你

您可能无法正确访问它。您可以直接输出或将其转换为字符串。(在这个例子中,铸造是多余的,因为无论如何回声自动完成)$content&nbsp;=&nbsp;simplexml_load_string( &nbsp;&nbsp;&nbsp;&nbsp;'<content><![CDATA[Hello,&nbsp;world!]]></content>');echo&nbsp;(string)&nbsp;$content;//&nbsp;or&nbsp;with&nbsp;parent&nbsp;element:$foo&nbsp;=&nbsp;simplexml_load_string( &nbsp;&nbsp;&nbsp;&nbsp;'<foo><content><![CDATA[Hello,&nbsp;world!]]></content></foo>');echo&nbsp;(string)&nbsp;$foo->content;你可能会有更好的运气LIBXML_NOCDATA:$content&nbsp;=&nbsp;simplexml_load_string( &nbsp;&nbsp;&nbsp;&nbsp;'<content><![CDATA[Hello,&nbsp;world!]]></content>' &nbsp;&nbsp;&nbsp;&nbsp;,&nbsp;null &nbsp;&nbsp;&nbsp;&nbsp;,&nbsp;LIBXML_NOCDATA);

牛魔王的故事

这LIBXML_NOCDATA是simplexml_load_file()函数的可选第三个参数。这将返回XML对象,并将所有CDATA数据转换为字符串。$xml&nbsp;=&nbsp;simplexml_load_file($this->filename,&nbsp;'SimpleXMLElement',&nbsp;LIBXML_NOCDATA);echo&nbsp;"<pre>";print_r($xml);echo&nbsp;"</pre>";修复SimpleXML中的CDATA

阿波罗的战车

这对我有用:echo&nbsp;trim($entry->title);
打开App,查看更多内容
随时随地看视频慕课网APP
我要回答