Rumah > pembangunan bahagian belakang > tutorial php > xml转换成数组的有关问题

xml转换成数组的有关问题

WBOY
Lepaskan: 2016-06-13 10:00:01
asal
759 orang telah melayarinya

xml转换成数组的问题
现有如下xml:

XML code
<!--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>
Salin selepas log masuk

xml深度不确定但每个节点都有text属性,想转换成如下数组,有什么好办法吗
PHP code
<!--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        )        .....)
Salin selepas log masuk


------解决方案--------------------
看看这个

http://weblog.thomassmart.com/2008/09/php-function-xml2array/
------解决方案--------------------
PHP code
$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>
Salin selepas log masuk
探讨
PHP code
$s =









……
Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan