Maison >développement back-end >tutoriel php >Comment puis-je accéder aux nœuds XML avec des deux-points à l'aide de SimpleXML ?
Accès aux nœuds XML avec des deux-points à l'aide de XML simple
Dans les documents XML, les espaces de noms sont utilisés pour distinguer les éléments portant le même nom mais de différents sources. Cela peut devenir un défi lorsque vous essayez de lire du XML à l'aide de l'extension Simple XML.
Considérez le scénario dans lequel vous essayez d'analyser un flux RSS de Flickr et rencontrez des nœuds avec des espaces de noms tels que
La solution
Pour surmonter ce défi, Simple XML fournit la méthode children(), qui vous permet de accéder aux éléments XML dans un espace de noms spécifié. Voici un exemple :
$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; }
Dans cet extrait, la variable $namespace contient l'URI de l'espace de noms. En transmettant cet argument à la méthode children(), vous pouvez accéder aux éléments de cet espace de noms, même si leurs noms contiennent des deux-points.
En utilisant la méthode children() et en spécifiant l'espace de noms approprié, vous pouvez analyser efficacement le XML. des documents contenant des éléments avec des espaces de noms, même si vous choisissez de ne pas vous plonger dans les complexités du DOM.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!