Maison >développement back-end >tutoriel php >Comment puis-je accéder facilement aux éléments préfixés par un espace de noms en XML simple ?
Navigation dans les nœuds avec préfixe d'espace de noms en XML simple
Pour accéder aux éléments qui contiennent un espace de noms préfixé comme media:thumbnail ou flickr:profile dans un Flux RSS, Simple XML fournit une méthode qui contourne le besoin d'un DOM complexe manipulation.
Utiliser children() pour accéder aux éléments avec espace de noms
La méthode children() prend un URI d'espace de noms comme argument et renvoie un itérateur qui génère des objets représentant les éléments dans l'espace de noms spécifié. Par exemple :
$feed = simplexml_load_file('http://www.sitepoint.com/recent.rdf'); foreach ($feed->item as $item) { $ns_dc = $item->children('http://purl.org/dc/elements/1.1/'); echo $ns_dc->date; }
Dans cet extrait, $ns_dc devient un itérateur sur les éléments enfants de chaque élément appartenant à l'espace de noms http://purl.org/dc/elements/1.1/. Cela vous permet d'accéder à l'élément de date dans l'espace de noms DC.
Application de cette solution à votre flux Flickr
Pour récupérer la vignette de chaque élément de votre flux RSS Flickr , vous pouvez utiliser le code suivant :
$feed = simplexml_load_file('http://example.com/flickr.rss'); foreach ($feed->item as $item) { $ns_media = $item->children('http://search.yahoo.com/mrss/'); echo $ns_media->thumbnail->attributes()->url; }
Cela affichera l'URL de la vignette de chaque élément du nourrir.
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!