在PHP中将多维数组转换为 XML 文件
给定一个多维数组,任务是将该数组转换为 XML 文件。要将多维数组转换为 xml 文件,请创建一个 XML 文件并使用 appendChild() 和 createElement()函数将数组元素添加到 XML 文件中。
例子:
- 首先,创建一个PHP多维数组以将该数组转换为 XML 文件格式。
$array = array ( 'company' => 'Gfg', 'employe' => array ( '0' => array ( 'name' => 'Jatin Das', 'age' => '34' ), '1' => array ( 'name' => 'Mohit Mal', 'age' => '30' ), '2' => array ( 'name' => 'Shubham Jha', 'age' => '24' ), '3' => array ( 'name' => 'Harsha Bhosle', 'age' => '29' ) ) );
- 现在,您需要创建一个用户定义的函数generateXML()。
function generateXML($data) { $title = $data['company']; $rowCount = count($data['employe']); // Create the xml document $xmlDoc = new DOMDocument(); $root = $xmlDoc -> appendChild($xmlDoc -> createElement("geeks")); $root -> appendChild($xmlDoc -> createElement("title", $title)); $root -> appendChild($xmlDoc -> createElement("totalRows", $rowCount)); $tabUsers = $root -> appendChild($xmlDoc -> createElement('rows')); foreach($data['employe'] as $user) { if (!empty($user)) { $tabUser = $tabUsers -> appendChild($xmlDoc -> createElement('employe')); foreach($user as $key => $val) { $tabUser -> appendChild($xmlDoc -> createElement($key, $val)); } } } header("Content-Type: text/plain"); // Make the output $xmlDoc -> formatOutput = true; // Save xml file $file_name = str_replace(' ', '_', $title) . '.xml'; $xmlDoc -> save($file_name); // Return xml file name return $file_name; }
- 然后使用generateXML()函数并在其中传递数组数据以将数组转换为PHP的XML。
generateXML($array);
- 输出:
Gfg 4 Jatin Das 34 Mohit Mal 30 Shubham Jha 24 Harsha Bhosle 29