XML (rozszerzalny język znaczników) to jeden rodzaj języka znaczników, który jest używany do przechowywania danych w formacie czytelnym człowieka. Różni się od innych języków znaczników. Każdy znacznik tego języka jest zdefiniowany przez użytkownika. Korzystanie z XML jest lepszym rozwiązaniem do przechowywania niewielkiej ilości danych, gdy nie chcesz używać żadnej bazy danych do przechowywania danych. Dane z dokumentu XML można łatwo uzyskać i użyć w dowolnej aplikacji internetowej za pomocą skryptu PHP. W tym samouczku można przeanalizować dokument XML i przechowywać w tablicy asocjacyjnej.
Niezbędne funkcje
Niektóre wbudowane funkcje służą do konwersji zawartości XML na asocjacyjną tablicę PHP. Cele różnych funkcji wyjaśniono poniżej.
file_get_contents ():
Ta funkcja zwraca dane ciągu, konwersji dowolnej danych XML. Zajmuje dowolną nazwę pliku XML jako argument.
simplexml_load_string ():
Ta funkcja zwraca obiekt XML, przekształcając dane ciągów XML. Zajmuje dane łańcucha XML jako argument.
simplexml_load_file ():
Ta funkcja zwraca obiekt XML, przekształcając zawartość pliku XML. Bierze nazwę pliku XML jako argument.
Simplexmlelement ():
Służy do tworzenia obiektu XML z danych XML. Zajmuje wartość treści XML jako argument.
json_encode ():
Zwraca obiekt JSON, przekształcając obiekt XML. Zmienia się zmienną obiektu XML jako argumentu.
JSON_DECODE ():
Zwraca asocjacyjną tablicę PHP poprzez konwersję danych JSON. Zmienia się zmienną obiektową JSON jako argument.
Utwórz plik XML
Będziesz zobowiązany do utworzenia pliku XML lub zdefiniowania danych XML w skrypcie, aby poznać drogę do konwersji danych XML w asocjacyjną tablicę PHP. Utwórz plik XML o nazwie kursy.XML z następującą zawartością i przechowuj ją w miejscu, w którym znajduje się skrypt PHP. Plik zawiera elementy dziecięce pod elementem nadrzędnym. Tak więc dwuwymiarowa tablica asocjacyjna wygeneruje po przekształceniu następującego pliku XML w tablicę PHP.
kursy.XML
Przykład-1: Konwertuj treść pliku XML na tablicę asocjacyjną bez błędu sprawdzania
Poniższy skrypt pokazuje użycia funkcji FILE_GET_CONTENTS () i SIPPLEXML_LOAD_SSTRING (), aby utworzyć obiekt XML. Tutaj kursy.Plik XML służy do konwersji, który został utworzony wcześniej. Następnie funkcja JSON_ENCODE () i JSON_DECODE () są używane do uzyskania tablicy asocjacyjnej po przekształceniu zawartości pliku XML. Jeśli nie ma błędu w zawartości XML, wówczas nie zostanie wyświetlony błąd następujący skrypt. Tutaj, Tag służy do drukowania tablicy w sformatowany sposób.
";
print_r ($ Assarray);
Echo "
Wyjście:
Następujące dane wyjściowe pojawią się po wykonaniu skryptu PHP. Tutaj generowana jest dwuwymiarowa tablica na podstawie zawartości pliku XML, kursów.XML.
Przykład-2: Konwertuj zawartość pliku XML na tablicę asocjacyjną z błędem sprawdzania
Lepiej jest sprawdzić błąd podczas przekształcania XML w tablicę asocjacyjną. Pomoże koderowi debugować kod, jeśli sprawdzanie błędów zostanie zaimplementowane w skrypcie. Poniższy skrypt pokazuje sposoby konwersji zawartości pliku XML na tablicę asocjacyjną za pomocą funkcji simplexml_load_file () z obsługą błędów. Funkcja libxml_use_internal_errors () jest używana z wartością prawdziwą, aby umożliwić obsługę błędów. Jeśli zawartość pliku XML używana w skrypcie zawiera dowolny błąd, funkcja simplexml_load_file () zwróci false, a komunikat o błędzie zostanie wydrukowany za pomocą libxml_get_errors () funkcja funkcji. Jeśli w pliku XML nie istnieje błąd, zawartość pliku będzie poprawnie konwertować na dwuwymiarową tablicę asocjacyjną.
// Włącz obsługę błędów użytkownika";";
print_r ($ Assarr);
Echo "
Wyjście:
Następujące dane wyjściowe pojawią się po wykonaniu skryptu PHP. Tutaj nie ma błędu w pliku XML. Tak więc dwuwymiarowa tablica wygenerowała tak jak poprzedni przykład w oparciu o treść pliku XML, kursy.XML.
Przykład-3: Konwertuj treść XML na tablicę asocjacyjną
Poniższy skrypt pokazuje sposób przekształcenia danych XML w tablicę asocjacyjną za pomocą funkcji simplexmlelement (). W skrypcie zawartość XML jest przechowywana w zmiennej o nazwie xml, która jest używana jako argument funkcji, simplexmlelement (). Następnie funkcja JSON_ENCODE () i JSON_DECODE () są używane do uzyskania tablicy asocjacyjnej po przekształceniu zawartości pliku XML.
// Zdefiniuj zmienną XML";";
print_r ($ Assarray);
Echo "
Wyjście:
Następujące dane wyjściowe pojawią się po wykonaniu skryptu PHP. Tutaj generowana jest dwuwymiarowa tablica na podstawie zawartości zmiennej XML, $ xml.
Wniosek:
Były trzy różne sposoby przekształcania treści XML w tablicę asocjacyjną, która została pokazana w tym samouczku. Pomoże to czytelnikom poznać sposób pracy z danymi XML i parować dane z treści XML za pomocą skryptu PHP.