使用PHP 的SimpleXMLElement 處理CDATA
使用SimpleXMLElement 處理包含CDATA 部分的XML 文件時,通常會遇到以下情況: CDATA 標記返回為NULL。這可能會導致存取和處理所需資料時遇到困難。
取得CDATA 內容
要檢索CDATA 標籤中包含的內容,有幾種方法可用:
例如,給定以下XML 片段:
<content><![CDATA[Hello, world!]]></content>
您可以存取CDATA使用以下PHP 程式碼的內容:
$content = simplexml_load_string( '<content><![CDATA[Hello, world!]]></content>' ); echo (string) $content;
這將輸出:
Hello, world!
替代方法:LIBXML_NOCDATA
在某些情況下,您可能會在使用預設SimpleXMLElement 設定檢索CDATA 內容時遇到問題。要解決此問題,您可以嘗試在XML 解析期間使用LIBXML_NOCDATA 標誌:
$content = simplexml_load_string( '<content><![CDATA[Hello, world!]]></content>' , null , LIBXML_NOCDATA );
此方法會更改XML 解析行為,將CDATA 部分視為常規文字節點,從而允許您存取內容而無需顯式轉換或直接輸出。
以上是如何使用 PHP 的 SimpleXMLElement 正確擷取 CDATA 內容?的詳細內容。更多資訊請關注PHP中文網其他相關文章!