使用簡單XML 存取帶冒號的XML 節點
在XML 文件中,命名空間用於區分名稱相同但不同的元素來源。當嘗試使用 Simple XML 擴充讀取 XML 時,這可能會成為一個挑戰。
考慮這樣的場景:您嘗試從 Flickr 解析 RSS 提要,並遇到具有諸如
解決方案
為了克服這個挑戰,Simple XML 提供了 Children() 方法,它允許您存取指定名稱空間內的 XML 元素。以下是一個範例:
$feed = simplexml_load_file('http://www.sitepoint.com/recent.rdf'); foreach ($feed->item as $item) { $namespace = 'http://purl.org/dc/elements/1.1/'; $ns_dc = $item->children($namespace); echo $ns_dc->date; }
在此程式碼段中,$namespace 變數保存命名空間的 URI。透過將此參數傳遞給children()方法,您可以存取該命名空間中的元素,儘管它們的名稱包含冒號。
透過利用children()方法並指定適當的命名空間,您可以有效地解析XML包含帶有命名空間的元素的文檔,即使您選擇不深入研究 DOM 的複雜性。
以上是如何使用 SimpleXML 存取帶有冒號的 XML 節點?的詳細內容。更多資訊請關注PHP中文網其他相關文章!