Questo è il metodo prolisso
Prendilo come esempio didattico.Codice PHP:$xml= new DOMDocument();
$xml->load('movies.xml');
$movies= $xml->getElementsByTagName("movie");
$data= array();
for ($i = 0, $len= $movies->length; $i < $len; $i++){
$children= $movies->item($i)->childNodes;
for($y = 0; $y < $children->length; $y++){
if($children->item($y)->nodeType==XML_ELEMENT_NODE){
$sub= $children->item($y)->childNodes;
for($x = 0; $x < $sub->length; $x++){
if($sub->item($x)->nodeType==XML_TEXT_NODE){
$data[][$children->item($y)->tagName]= $sub->item($x)->nodeValue;
}
elseif($sub->item($x)->nodeType==XML_ELEMENT_NODE){
$data[][$sub->item($x)->tagName]=$sub->item($x)->firstChild->nodeValue;
}
}
}
}
}
echo "<pre>";
print_r($data);
ho letto l'altro thread e ti consiglio
vivamente di leggerti una guida sul DOM
dai un occhio qui è su js ma ci sono
gli stessi metodi/proprietà delle DOM functions.
![]()
PS.
Se lo hai scritto tu cambia il file xml
perchè è rindondante
ie
lo trasformi inCodice PHP:<genere>
<item>Demenziale</item>
</genere>
in questo modo è molto +Codice PHP:<genere>Demenziale</genere>
semplice il parsing.


Rispondi quotando