Bonjour à tous!
J'étais gentillement en train d'interpéter mon XML en php, quand j'ai eu recours à la fonction DOM : childNodes.
Il s'avère que tous les enfants récupérés sont à des indices impaires. Et les indices paires ne donnent rien.
Voici mon code php
Voilà, ça me semble un peu bizarre.
Si quelqu'un a déjà rencontré ce soucis, ou voit une erreur dans mon code...
Merci
J'étais gentillement en train d'interpéter mon XML en php, quand j'ai eu recours à la fonction DOM : childNodes.
Il s'avère que tous les enfants récupérés sont à des indices impaires. Et les indices paires ne donnent rien.
Voici mon code php
function listage($xml)
{
if( $xml->getElementsByTagName("rubrique")->length != 0 )
{
$list_tag = $xml->getElementsByTagName("rubrique");
echo "<ul>";
for( $i=0 ; $i<$list_tag->length ; $i++ )
{
echo "<li>".$list_tag->item($i)->getElementsByTagName("titre")->item(0)->nodeValue."</li>";
listage($list_tag->item($i)->getElementsByTagName("sousMenu")->item(0));
}
echo "</ul>";
}
else
{
$list_tag = $xml->getElementsByTagName("sousRubrique");
if( $list_tag->length != 0 )
{
echo "<ul>";
for( $i=0 ; $i<$list_tag->length ; $i++ )
{
echo "<li>".$list_tag->item($i)->getElementsByTagName("titre_subrub")->item(0)->nodeValue."</li>";
$enfants = $list_tag->item($i)->childNodes;
echo $enfants->item(0)->nodeValue;
echo $enfants->item(1)->nodeValue;
//listage($list_tag->item($i)->lastChild);
}
echo "</ul>";
}
else
{
}
}
}
$dom = new DomDocument();
$xmlObject = "XML/rubriques.xml";
$dom->load($xmlObject);
listage($dom);
Voilà, ça me semble un peu bizarre.
Si quelqu'un a déjà rencontré ce soucis, ou voit une erreur dans mon code...
Merci