在 PHP 中使用 SimpleXMLElement 处理
使用 SimpleXMLElement 处理包含 CDATA 标签的 XML 文档时,访问其内容可以有时会导致 NULL 值。解决此问题的方法如下:
访问 CDATA 内容
要正确访问 CDATA 标签的内容,您可以直接回显 SimpleXMLElement 对象或将其转换为字符串。
$content = simplexml_load_string( '<content><![CDATA[Hello, world!]]></content>' ); echo (string) $content; // Output: Hello, world!
使用LIBXML_NOCDATA
或者,您可以在创建 SimpleXMLElement 对象时使用 LIBXML_NOCDATA 标志来禁止删除 CDATA 标记。
$content = simplexml_load_string( '<content><![CDATA[Hello, world!]]></content>' , null , LIBXML_NOCDATA ); echo (string) $content; // Output: <![CDATA[Hello, world!]]>
具有父元素的示例
如果 CDATA 标签位于父元素内,您可以使用 -> 来访问它运算符。
$foo = simplexml_load_string( '<foo><content><![CDATA[Hello, world!]]></content></foo>' ); echo (string) $foo->content; // Output: <![CDATA[Hello, world!]]>
以上是如何在 PHP 中使用 SimpleXMLElement 访问 CDATA 内容?的详细内容。更多信息请关注PHP中文网其他相关文章!