2012-07-03 92 views
1

如何將下列嵌套數組轉換爲xml文件? XML文件將是什麼樣子?如何在PHP中將嵌套數組轉換爲xml?

Array(
array('name'=>'Jone Smith','phone'=>'416-689-9865'), 
array('name'=>'Jane Ling','phone'=>'658-985-5222') 
); 
+4

http://stackoverflow.com/questions/1397036/how-to-convert- array-to-simplexml – shxfee

回答

3
<?php 
$your_array= array ('key1' => 'val1', 'key2' => 'val2', 'second_array' => array ('key3' => 'val3','key4' => 'val4'),); 
$toXml = new SimpleXMLElement('<root/>'); 
array_walk_recursive($your_array, array ($toXml, 'addChild')); 
print_r($toXml->asXML()); 

其他備選是使用array_walk。 array_walk_recursive()函數運行用戶自制函數中的每個數組元素。數組的鍵和值是函數中的參數。這個函數和array_walk()函數的區別在於,使用這個函數你可以使用更深的數組(數組在內部)

+2

這是一個相當聰明的解決方案,但當值爲空時會中斷。不知道爲什麼。 – zmippie