Récupéation de donnée dans une balise

Petit nouveau ! | 2 Messages

02 avr. 2010, 14:53

Bonjour,

J'ai une petite question, peux être simpliste mais je n'arrive pas a trouver le moyen de récupérer une donnée de mon fichier xml dont voici l'indentation :

Code : Tout sélectionner

<fde> <news> <item id="1"> <nom>T 5</title> <commentaire>D 5</description> </news> </fde>
J'aimerais récupérer juste l'id donc ici 5 par exemple j'ai fais un bout de code qui me permet de récupérer le T5 et le D5 mais j'aimerais récupérer uniquement le 1 :
// Récupération et création du numéro id
$document_xml = new DomDocument(); // Instanciation de la classe DomDocument : création d'un nouvel objet.
$resultat_html = ''; // Initialisation de la chaîne qui contient le résultat.
$document_xml->load('../news.xml');
$elements = $document_xml->getElementsByTagName('news');
$element = $elements->item(0);
$enfants = $element->childNodes;

foreach($enfants as $enfant) // On prend chaque noeud enfant séparément.
{
      $nom = $enfant->nodeName; // On prend le nom de chaque noeud.                
      if ($nom == 'news')
      {
            $resultat_html .= '<strong>'.$enfant->nodeValue.'</strong>';
      }
      elseif($nom == '#text')
      {
            $resultat_html .= $enfant->nodeValue;
      }
      else
      {
            $resultat_html .= $enfant->nodeValue;
      }	 
} 
Et donc quand je fais :
echo $resultat_html;
J'ai T5 et D5 d'afficher :?

Si quelqu'un a une idée voici le code.

Merci d'avance !

Eléphanteau du PHP | 27 Messages

02 avr. 2010, 15:00

regarde, si tu modifiais ton XML comme ceci:
<fde>
<news>
<id>1</id>
<nom>T 5</title>
<commentaire>D 5</description>
</news>
</fde>
Développeur PHP à temps perdu ...
PHP Maximus CMS , un cms plus petit PHP Minimus, un cms minimaliste PHP Nanomus, un pare feu pour votre site PHP Firewall

Petit nouveau ! | 2 Messages

02 avr. 2010, 15:32

Oui j'y ai bien pensé sauf que par la suite j'aimerais pouvoir supprimer un noeud en fonction de son id, donc ici supprimer de la balise <news> a la balise </news> qui aurais l'id 1 et donc si je passe par ta proposition je ne pourrais pas supprimer toute ma news ! Ou alors je ne vois pas comment ! :?

ViPHP
ViPHP | 5462 Messages

02 avr. 2010, 15:39

vous êtes dans la même classe ?
php-debutant/liste-avec-fichier-xml-t252506.html