Buonasera,
premettendo che solo da qualche ora ho iniziato a studiare PHP e XML, ho creato questo codice:
Codice PHP:
$xml = simplexml_load_file("file.xml");
$id = 1;
$idx = $xml->xpath("/group/g[@id=".$id."]");
echo $idx['abc'];
Che dovrebbe restituirmi (in questo caso) valore dal seguente file XML:
Codice PHP:
<?xml version="1.0" encoding="iso-8859-1" ?>
<group>
<g id="1">
<abc>valore</abc>
</g>
<g id="2">
<abc>valore 2</abc>
</g>
</grop>
Il problema è che non stampa nulla e proprio non riesco a capire perchè, ho provato anche così:
Codice PHP:
echo $idx[0]['abc'];
Ma il risultato non cambia, però eseguendo il seguente "debug":
Codice PHP:
print_r($idx);
Mi restituisce:
Codice:
Array ( [0] => SimpleXMLElement Object ( [@attributes] => Array ( [id] => 1 ) [abc] => valore ) )
Pertanto penso che fino alla lettura non ci siano stati errori, adesso sono nelle vostre mani.
Saluti,
Michelangelo