Home >Backend Development >PHP Tutorial >xml转换成数组的有关问题
xml转换成数组的问题
现有如下xml:
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--><root><rows><errmsg text=""></errmsg><retvalue text="true"></retvalue></rows><records><productno text="000321"></productno><billno text=""></billno><orderno text="D004410439"></orderno><out_trade_no text="100001"></out_trade_no><plcprem text="0.0"></plcprem><orderprem text="50.0"></orderprem><commision text="0.0"></commision></records>....<root></root></root>
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->Array( [rows] => Array ( [errMsg] => [retValue] => true ) [records] => Array ( [productno] =>000321 [billno] => [orderno] =>D004410439 [out_trade_no] => 100001 [plcprem] =>0.0 [orderprem] =>50.0 [commision] =>0.0 ) .....)
$s =<rows><errmsg text=""></errmsg><retvalue text="true"></retvalue></rows><records><productno text="000321"></productno><billno text=""></billno><orderno text="D004410439"></orderno><out_trade_no text="100001"></out_trade_no><plcprem text="0.0"></plcprem><orderprem text="50.0"></orderprem><commision text="0.0"></commision></records>XML;$obj = simplexml_load_string($s);$r = array();foreach($obj as $name=>$nodes) { foreach($nodes as $k=>$v) { $t = (array)$v->attributes()->text; $r[$name][$k] = $t[0]; }}print_r($r);<br><font color="#e78608">------解决方案--------------------</font><br>