La funzione simplexml_load_string() interpreta una stringa, contenuta in un documento XML, all'interno di un oggetto della classe SimpleXMLElement le cui proprietà contengono i dati rilevati all'interno della stringa.
Ne consegue che la funzione appena descritta potrà essere utilizzata per l'accesso in lettura di elementi e contenuti all'interno di un documento XML; nel prossimo esempio la nostra azione di parser sul file "test.php" sarà indirizzata verso l'elemento "<descrizione>" presente nel listato:
<?php
include 'test.php';
$xml = simplexml_load_string($doc_xml);
echo $xml->articolo[0]->descrizione;
?>
Dall'esecuzione del codice proposto, otterremo la stampa a video del dato contenuto all'interno del tag in esame, quindi visualizzeremo la stringa:
Guida completa al parsing XML.
Questo perchè la funzione individua l'elemento indicato attraverso l'istanza dell'oggetto della classe SimpleXMLElement ("$xml->articolo[0]->descrizione"); i dati relativi al tag divengono quindi parte delle proprietà dell'oggetto e di conseguenza divengono accessibili.
La funzione simplexml_load_string() permette di parsare sia elementi singoli che multipli all'interno delle gerarchie di tag XML. Questo ci consente di isolare tutte le istanze appartenenti ad un determinato elemento ricorrendo ad un semplice ciclo di iterazione:
<?php
include 'test.php';
$xml = simplexml_load_string($doc_xml);
foreach ($xml->articolo as $articolo)
{
echo $articolo->descrizione, '<br />';
}
?>
Quindi, in presenza di più contenuti delimitati dall'elemento "<descrizione>", verrà creato un array contenente tutti i dati rilevati all'interno del ciclo foreach che per ciascun nodo "<articolo>" stamperà un diverso dato appartenente a "<descrizione>".
Attenzione: questo articolo è stato concesso in esclusiva per la pubblicazione a Mrwebmaster.it; ne è vietata la riproduzione,
anche parziale, senza l'esplicito consenso dell'autore e della redazione di Mrwebmaster.it.
|