<?PHP /** 2016年10月18日14:09:01 **/ simplexml 解析 xml 文档 //导入xml文档 $sx = simplexml_load_file('./book.xml'); //$sx 是对象 + 数组的混合体 echo $sx->book[1]->title; // xml文件 转换成 数组格式 1.导入xml文档 $sx = simplexml_load_file('./book.xml'); 2.使用递归, 把simplexml 对象 (array) 成数组格式 function toArray($sim){ $arr = (array)$sim; foreach ($arr as $k => $v) { if ($v instanceof simplexmlelement || is_array($v)) { $arr[$k] = toArray($v); } } return $arr; } $xmlarr = toArray($simxml); //数组 转换成 xml文件 (做API接口的时候,需要把数据库中的东西变成xml文档) 1.有一个多维数组$arr,需要转换成为xml文件 2.利用递归实现 function arrToxml($arr,$node=null){ if ($node === null) { $simxml = new simplexmlelement('<?xml version="1.0" encoding="utf-8"?><root></root>'); }else{ $simxml = $node; } foreach ($arr as $k => $v) { if (is_array($v)) { arrToxml($v,$simxml->addChild($k)); }else if (is_numeric($k)) { $simxml->addChild("item".$v); }else{ $simxml->addChild($k,$v); } } return $simxml->savaxml(); } header('content-type: text/xml'); echo arrToxml($arr);