在web開發中,我們經常需要將一些資料以xml的形式進行傳輸和存儲,而把xml資料轉換為數組,在實際業務中也是很常見的需求。 PHP作為常用的web程式語言,也提供了許多工具和函數來處理xml資料。本文將介紹如何將xml資料轉換為PHP中的陣列。
PHP提供了一個名為SimpleXML的解析器,可以將xml資料轉換為PHP物件。透過將物件強制轉換為數組,即可將xml資料轉換為PHP中的數組。
$xml = <<
< book>
<name>PHP Programming</name> <author>John Smith</author> <price>15.00</price>
<name>Web Development</name> <author>Jane Doe</author> <price>20.00</price>
XML;
#$data = simplexml_load_string($xml);
$array = json_decode(json_encode($data), TRUE);
?>
<name>PHP Programming</name> <author>John Smith</author> <price>15.00</price>
<name>Web Development</name> <author>Jane Doe</author> <price>20.00</price>
$doc->loadXML($xml);
$result = array();
$item = array(
"name" => $book->getElementsByTagName("name")->item(0)->nodeValue, "author" => $book->getElementsByTagName("author")->item(0)->nodeValue, "price" => $book->getElementsByTagName("price")->item(0)->nodeValue
array_push($result, $item);
}
?>
<name>PHP Programming</name> <author>John Smith</author> <price>15.00</price>
<name>Web Development</name> <author>Jane Doe</author> <price>20.00</price>
$reader = new XMLReader();
$reader->xml($xml);
if ($reader->nodeType == XMLReader::ELEMENT && $reader->name == 'book') {
$book = array(); while ($reader->read()) { if ($reader->nodeType == XMLReader::ELEMENT) { $name = $reader->name; $reader->read(); $book[$name] = $reader->value; } elseif ($reader->nodeType == XMLReader::END_ELEMENT && $reader->name == 'book') { array_push($data, $book); break; } }
}
?>
以上是php怎麼轉xml為數組的詳細內容。更多資訊請關注PHP中文網其他相關文章!