Rumah >pembangunan bahagian belakang >tutorial php >PHP XML ke dalam Array
Kami menggunakannya untuk menukar dokumen XML kepada tatasusunan PHP. Kadangkala, kita perlu mengendalikan dokumen XML sebagai data masuk atau data eksport sebagai dokumen XML. Bahasa XML digunakan untuk menstruktur perkongsian data merentas tapak web atau aplikasi. Jadi, ia menyediakan operasi XML kepada tatasusunan untuk berfungsi dengan lancar dengan data XML.
Mulakan Kursus Pembangunan Perisian Percuma Anda
Pembangunan web, bahasa pengaturcaraan, ujian perisian & lain-lain
Semasa menukar, kita perlu menggunakan beberapa fungsi seperti yang dinyatakan di bawah –
Ia menerima dokumen XML dan menukarnya menjadi tatasusunan. Katakan kita mempunyai dokumen XML sebagai ExXMl.xml; sekarang, kami mahu menukarnya kepada tatasusunan. Jadi, untuk menukar, kita perlu mengikuti beberapa langkah –
Contoh untuk memuatkan fail XML dan menukarnya menjadi tatasusunan PHP –
Pertama, kami mencipta fail data xml dengan nama “ExXML.xml” dan mencipta kandungan data sebagai –
Kod:
<?xml version="1.0" encoding="utf-8"?> <Student> <firstname name = 'John'> <rollno> 12 </rollno> <marks> 78 </marks> <subject> English </subject> </firstname> <firstname name='Sam'> <rollno> 15 </rollno> <marks> 80 </marks> <subject> English </subject> </firstname> <firstname name='Praveen'> <rollno> 30 </rollno> <marks> 50 </marks> <subject> English </subject> </firstname> </Student> Next,we create the PHP file to read and load the XML file, as below - <?php // xml file $file = "ExXML.xml"; // Read XML file as string $xml_file = file_get_contents($file); // xml string is Convert into an object $obj = simplexml_load_string($xml_file); // AN object Convert into json string $json_string = json_encode($obj); // Convert json string into an array $array = json_decode($json_string, true); // print an array print_r($array); ?>
Output:
Semua tag pembukaan dan penutup adalah betul. Seterusnya, objek yang dimuatkan mengekod dan menyahkod sebagai tatasusunan PHP dengan bantuan fungsi json_encode () dan json_decode() masing-masing.
Contoh apabila menemui dan menghuraikan ralat-
Seterusnya, kami menulis kod PHP untuk memahami PHP XML ke dalam tatasusunan, di mana kami akan melihat ralat penghuraian yang berlaku semasa melaksanakan XML ke dalam tatasusunan kerana teg XML tidak padan atau tidak berstruktur dengan betul, seperti di bawah –
Kod:
<?xml version='1.0'?> <Student> <firstname name = 'John'> <rollno> 12 </rollno> <marks> 78 </marks> <!-- missing --> </firstname> <firstname name='Sanjay'> <rollno> 15 </rollno> <marks> 80 </marks> <!-- mismatch tag --> <subject> English <subject> </firstname> <firstname name='Parvez'> <rollno> 30 </rollno> <marks> 50 </marks> <subject> English </subject> </firstname> </Student> Next, we create the PHP file to read and load the XML file, as below - <?php // xml file $file = "ExXML.xml"; // Read file as string $xml_file = file_get_contents($file); // xml string is Convert into an object $obj = simplexml_load_string($xml_file); // check xml load or not if ($obj == FALSE) { echo "There were errors to parse the XML file.\n"; exit; } // AN object Convert into json string $json_string = json_encode($obj); // Convert json string into an array $array = json_decode($json_string, true); // print an array print_r($array); ?>
Output:
Salah satu teg pembuka dan penutup tidak sepadan dan salah satu teg tiada (seperti yang dinyatakan dalam fail XML dengan teg ulasan). Amaran berlaku semasa menghuraikan dan memuatkan fail XML, seperti yang dilihat dalam output di atas. Jadi, dengan membaca amaran, betulkan fail XML dan muatkannya semula.
Atas ialah kandungan terperinci PHP XML ke dalam Array. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!