Zugriff auf XML-Knoten mit Doppelpunkten mithilfe von Simple XML
In XML-Dokumenten werden Namespaces verwendet, um zwischen Elementen mit demselben Namen, aber unterschiedlichen Namen zu unterscheiden Quellen. Dies kann zu einer Herausforderung werden, wenn Sie versuchen, XML mit der Simple XML-Erweiterung zu lesen.
Stellen Sie sich das Szenario vor, in dem Sie versuchen, einen RSS-Feed von Flickr zu analysieren und auf Knoten mit Namespaces wie
Die Lösung
Um diese Herausforderung zu meistern, bietet Simple XML die Methode children(), die Ihnen dies ermöglicht Zugriff auf XML-Elemente innerhalb eines angegebenen Namespace. Hier ist ein Beispiel:
$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; }
In diesem Snippet enthält die Variable $namespace den URI des Namespace. Indem Sie dieses Argument an die Methode „children()“ übergeben, können Sie auf die Elemente in diesem Namensraum zugreifen, auch wenn ihre Namen Doppelpunkte enthalten.
Durch die Verwendung der Methode „kinder()“ und die Angabe des entsprechenden Namensraums können Sie XML effektiv analysieren Dokumente, die Elemente mit Namespaces enthalten, auch wenn Sie sich dafür entscheiden, nicht in die Komplexität des DOM einzutauchen.
Das obige ist der detaillierte Inhalt vonWie kann ich mit SimpleXML auf XML-Knoten mit Doppelpunkten zugreifen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!