XML (linguaggio di markup estensibile) è un tipo di linguaggio di markup che viene utilizzato per archiviare i dati in un formato leggibile dall'uomo. È diverso dalle altre lingue di markup. Ogni tag di questa lingua è definito dall'utente. L'uso di XML è la soluzione migliore per archiviare una piccola quantità di dati quando non si desidera utilizzare alcun database per archiviare i dati. I dati dal documento XML possono essere facilmente accessibili e utilizzati in qualsiasi applicazione Web utilizzando uno script PHP. Come il documento XML può essere analizzato e archiviato in un array associativo è mostrato in questo tutorial.
Funzioni necessarie
Alcune funzioni integrate vengono utilizzate per convertire il contenuto XML in un array PHP associativo. Gli scopi di diverse funzioni sono spiegati di seguito.
file_get_contents ():
Questa funzione restituisce i dati stringa convertendo qualsiasi dati XML. Impiega qualsiasi nome di file XML come argomento.
simplexml_load_string ():
Questa funzione restituisce l'oggetto XML convertendo i dati della stringa XML. Ci vogliono i dati di stringa XML come argomento.
simplexml_load_file ():
Questa funzione restituisce l'oggetto XML convertendo il contenuto del file XML. Prende il nome del file XML come argomento.
Simplexmlelement ():
Viene utilizzato per creare un oggetto XML dai dati XML. Prende il valore del contenuto XML come argomento.
JSON_ENCODE ():
Restituisce l'oggetto JSON convertendo l'oggetto XML. Prende la variabile dell'oggetto XML come argomento.
json_decode ():
Restituisce l'array PHP associativo convertendo i dati JSON. Prende la variabile dell'oggetto JSON come argomento.
Crea file XML
Ti verrà richiesto di creare un file XML o definire i dati XML nello script per conoscere la strada nella conversione dei dati XML in un array PHP associativo. Crea un file XML denominato corsi.XML con i seguenti contenuti e memorizzalo nella posizione in cui si trova lo script PHP. Il file contiene elementi figlio sotto un elemento genitore. Quindi, un array associativo bidimensionale genererà dopo aver convertito il seguente file XML in un array PHP.
corsi.XML
Esempio-1: convertire il contenuto del file XML in un array associativo senza controllare l'errore
Il seguente script mostra gli usi di file_get_contents () e simplexml_load_string () per creare oggetto XML. Qui, i corsi.Il file XML viene utilizzato per la conversione creata prima. Successivamente, la funzione JSON_ENCODE () e JSON_DECODE () vengono utilizzate per ottenere l'array associativo dopo aver convertito il contenuto del file XML. Se non esiste alcun errore nel contenuto XML, non verrà visualizzato alcun errore dal seguente script. Qui, Il tag viene utilizzato per stampare l'array in modo formattato.
";
print_r ($ assarray);
eco "
Produzione:
Verrà visualizzato il seguente output dopo aver eseguito lo script PHP. Qui, un array bidimensionale viene generato in base al contenuto del file XML, corsi.XML.
Esempio 2: converti il contenuto del file XML in un array associativo con errore di controllo
È meglio controllare l'errore durante la conversione di XML in un array associativo. Aiuterà il programmatore a eseguire il debug del codice se il controllo dell'errore è implementato nello script. Il seguente script mostra i modi per convertire il contenuto del file XML in un array associativo utilizzando la funzione simplexml_load_file () con gestione degli errori. La funzione libxml_use_internal_errors () viene utilizzata con valore reale per abilitare la gestione degli errori. Se il contenuto del file XML utilizzato nello script contiene qualsiasi errore, la funzione simplexml_load_file () restituirà false e il messaggio di errore verrà stampato utilizzando la funzione libxml_get_errors (). Se non esiste alcun errore nel file XML, il contenuto del file si convertirà correttamente in un array associativo bidimensionale.
// Abilita la gestione degli errori dell'utente";";
print_r ($ assarr);
eco "
Produzione:
Verrà visualizzato il seguente output dopo aver eseguito lo script PHP. Qui, non esiste alcun errore nel file XML. Quindi, un array bidimensionale ha generato come l'esempio precedente in base al contenuto del file XML, corsi.XML.
Esempio-3: converti il contenuto XML in un array associativo
Il seguente script mostra il modo di convertire i dati XML in un array associativo utilizzando la funzione simplexmlelement (). Nello script, il contenuto XML viene archiviato in una variabile denominata $ XML che viene utilizzata come argomento della funzione, SimpleXMlelement (). Successivamente, la funzione JSON_ENCODE () e JSON_DECODE () vengono utilizzate per ottenere l'array associativo dopo aver convertito il contenuto del file XML.
// Definisci la variabile XML";";
print_r ($ assarray);
eco "
Produzione:
Verrà visualizzato il seguente output dopo aver eseguito lo script PHP. Qui, un array bidimensionale viene generato in base al contenuto della variabile XML, $ XML.
Conclusione:
C'erano tre diversi modi per convertire il contenuto XML in un array associativo che è stato mostrato in questo tutorial. Ciò aiuterà i lettori a conoscere il modo di lavorare con i dati XML e analizzare i dati dal contenuto XML utilizzando facilmente uno script PHP.