เพื่อแปลงเอกสาร XML เป็น PHP Array ต้องใช้ฟังก์ชัน PHP หลายตัว ขั้นตอนอธิบายพร้อมตัวอย่างดังนี้:
ขั้นตอนที่ 1
สร้างไฟล์ XML ที่ต้องการแปลง
abc.xml
<?xml version='1.0'?>
<userdb>
<firstname name='Alex'>
<symbol>AL</symbol>
<code>A</code>
</firstname>
<firstname name='Sandra'>
<symbol>SA</symbol>
<code>S</code>
</firstname>
</userdb>
ขั้นตอนที่ 2
นำไฟล์ XML เข้ามาใน PHP ด้วย file_get_contents() อ่านทั้งไฟล์เป็นสตริงเก็บในตัวแปร
ขั้นตอนที่ 3
แปลงสตริงเป็น Object ด้วย simplexml_load_string()
ขั้นตอนที่ 4
แปลง Object เป็น JSON string ด้วย json_encode()
ขั้นตอนที่ 5
แปลง JSON string เป็น PHP Array ด้วย json_decode() พร้อมพารามิเตอร์ true
ตัวอย่าง
<?php $path = "abc.xml"; $xmlfile = file_get_contents($path); $new = simplexml_load_string($xmlfile); $jsonfile = json_encode($new); $myarray = json_decode($jsonfile, true); print_r($myarray); ?>