- Home
- Categorie
- Coding e Sistemistica
- PHP
- selezionare un child con SimpleXML
-
selezionare un child con SimpleXML
Buongiorno a tutti, sto utilizzando per la prima volta SimpleXML, e mi trovo già in difficoltà. Intanto incollo un esempio:
<materiale> <prezzi> <tipo>pubblico</tipo> <prezzo>3.80</prezzo </prezzi> <prezzi> <tipo>rivenditore</tipo> <prezzo>3.10</prezzo </prezzi> </materiale>
Dunque, se dovessi selezionare solo il prezzo per il pubblico, come posso fare? grazie a tutti
-
Facendo un print_R() sul risultato della funzione SimpleXML, ottieni a video la struttura dell'array.
$xml = simplexml_load_file("file.xml") or die("Error: Cannot create object");
print_r($xml);Generalmente il nodo principale lo "perdi", nel senso che sei già dentro. Quindi ti consiglio una struttura tipo:
<data>
<materiale>
<prezzi>
<tipo>pubblico</tipo>
<prezzo>3.80</prezzo>
</prezzi>
<prezzi>
<tipo>rivenditore</tipo>
<prezzo>3.10</prezzo>
</prezzi>
</materiale>
</data>Così puoi inserire altri materiali tranquillamente.
Con $xml->materiale[0]->prezzi[0]->tipo ottieni "pubblico"
Con $xml->materiale[0]->prezzi[0]->prezzo ottieni "3.80"
Con $xml->materiale[0]->prezzi[1]->tipo ottieni "rivenditore"
Con $xml->materiale[0]->prezzi[1]->prezzo ottieni "3.10"