在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中文網其他相關文章!