SimpleXMLElement - Accès au contenu d'un nœud [Résolu/Fermé]

Signaler
Messages postés
18393
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
5 août 2020
-
Messages postés
18393
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
5 août 2020
-
Bonjour,

Je suis en train de créer un "lecteur" de flux RSS Wordpress pour placer les derniers articles sur une page (d'un site externe).
J'y arrive sans aucun problème sauf que pour accèder au contenu de <slash:comments>.
J'utilise SimpleXMLElement pour parser le XML. Voici les différentes façon que j'ai essayé :
$item->slash:comments // Une erreur
$item->{'slash:comments'} // Vide


Merci d'avance.

1 réponse

Messages postés
18393
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
5 août 2020
4 198
Problème résolu.
J'ai fais un preg_replace pour remplacer slash:comments par nbcomments.
Si mon code peut intéresser quelqu'un :
<?php
	$xml = curl_init();
	curl_setopt($xml,CURLOPT_URL,"http://fighter-aircraft.com/feed");
	curl_setopt($xml,CURLOPT_RETURNTRANSFER,true);
	$rss = curl_exec($xml);
	$rss = preg_replace("#slash:comments#","nbcomments",$rss);
	$parser = new simpleXMLElement($rss);
	
	echo '<ul style="list-style:none;">';
	foreach($parser->channel->item as $v) {
		if($v->nbcomments == 0) {
			$commentaire = 'Aucun commentaire';
		}
		elseif($v->nbcomments == 1) {
			$commentaire = '1 Commentaire';
		}
		else {
			$commentaire = $v->nbcomments.' Commentaires';
		}
		echo '<li><a href="'.$v->link.'">'.$v->title.'</a> ('.$commentaire.')</li>';
	}
	echo '</ul>';
?>