Aide pour parcourir un XML - PHP - Programmation
Marsh Posté le 30-11-2009 à 12:08:50
Bonjour à tous, Je galère ce matin pour parcourir un XML. Je cherche à traiter dans une boucle toutes les lignes du XML Mon XML <Materiel id="89-001"> <RefInventaire>89</RefInventaire> <TypeMat code="MB">MOISSONNEUSES BATTEUSES</TypeMat> <SsTypeMat Code="0">7256</SsTypeMat> <Marque code="MF">MASSEY FERGUSSON</Marque> <Modele>7256</Modele> <Annee>2002</Annee> <Prix>65000.00</Prix> <Commentaire></Commentaire> <ImgPrinc>89-001_001.jpg</ImgPrinc> </Materiel> ... L'exemple est pour un matériel mais j'ai plusieurs matériels bien sur dans mon XML Mon code $dom = new DomDocument(); $dom->load($file); $materiels = $dom->getElementsByTagName("Materiel" ); for ($i = 0; $i < $materiels->length; $i++) { echo "<pre>"; echo "Name : ".$materiels->item($i)->nodeName; print_r($materiels->item($i)->nodeValue); echo "</pre>"; } Mon soucis c'est que dans mon $materiels->item($i)->nodeValue j'ai toutes les lignes du matériel. Je voudrais pouvoir boucler sur chacunes des lignes, et ainsi faire une condition sur le nom (nodeName) pour remplir un Objet Matériel. Quelqu'un aurait-il une idée ?
Make sure you enter the(*)required information where indicate.HTML code is not allowed
Marsh Posté le 30-11-2009 à 12:08:50
Bonjour à tous,
Je galère ce matin pour parcourir un XML. Je cherche à traiter dans une boucle toutes les lignes du XML
Mon XML
<Materiel id="89-001">
<RefInventaire>89</RefInventaire>
<TypeMat code="MB">MOISSONNEUSES BATTEUSES</TypeMat>
<SsTypeMat Code="0">7256</SsTypeMat>
<Marque code="MF">MASSEY FERGUSSON</Marque>
<Modele>7256</Modele>
<Annee>2002</Annee>
<Prix>65000.00</Prix>
<Commentaire></Commentaire>
<ImgPrinc>89-001_001.jpg</ImgPrinc>
</Materiel>
...
L'exemple est pour un matériel mais j'ai plusieurs matériels bien sur dans mon XML
Mon code
$dom = new DomDocument();
$dom->load($file);
$materiels = $dom->getElementsByTagName("Materiel" );
for ($i = 0; $i < $materiels->length; $i++) {
echo "<pre>";
echo "Name : ".$materiels->item($i)->nodeName;
print_r($materiels->item($i)->nodeValue);
echo "</pre>";
}
Mon soucis c'est que dans mon $materiels->item($i)->nodeValue j'ai toutes les lignes du matériel. Je voudrais pouvoir boucler sur chacunes des lignes, et ainsi faire une condition sur le nom (nodeName) pour remplir un Objet Matériel.
Quelqu'un aurait-il une idée ?