Home >Backend Development >PHP Tutorial >PHP解析XML转成数组
PHP解析XML转成数组 在线等
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--><?xml version="1.0" encoding="UTF-8"?><root> <a> <b name="name" value="value"></b> <b name="name" value="value"></b> <b name="name" value="value"></b> </a> <a> <b name="name" value="value"></b> <b name="name" value="value"></b> </a> <a> <b name="name" value="value"></b> <b name="name" value="value"></b> <b name="name" value="value"></b> <b name="name" value="value"></b> </a></root>
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--> Array( [0]=>Array( [0]=>Array(name=>'name',value=>'value'), [1]=>Array(name=>'name',value=>'value'), [2]=>Array(name=>'name',value=>'value') ), [1]=>Array( [0]=>Array(name=>'name',value=>'value'), [1]=>Array(name=>'name',value=>'value'), [2]=>Array(name=>'name',value=>'value') ), [2]=>Array( [0]=>Array(name=>'name',value=>'value'), [1]=>Array(name=>'name',value=>'value'), [2]=>Array(name=>'name',value=>'value') ),)
<?php $xml=<<<XML<?xml version="1.0" encoding="UTF-8"?><root> <a> <b name="name" value="value"></b> <b name="name" value="value"></b> <b name="name" value="value"></b> </a> <a> <b name="name" value="value"></b> <b name="name" value="value"></b> </a> <a> <b name="name" value="value"></b> <b name="name" value="value"></b> <b name="name" value="value"></b> <b name="name" value="value"></b> </a></root>XML;$obj=simplexml_load_string($xml);foreach($obj as $k=>$v){ $temp=array(); foreach ($v->b as $sv) { $a=(array)$sv->attributes(); $temp[]=$a[[email protected]']; } $arr[]=$temp;}print_r($arr);<br><font color="#e78608">------解决方案--------------------</font><br>
$s =<root> <a> <b name="name" value="value"></b> <b name="name" value="value"></b> <b name="name" value="value"></b> </a> <a> <b name="name" value="value"></b> <b name="name" value="value"></b> </a> <a> <b name="name" value="value"></b> <b name="name" value="value"></b> <b name="name" value="value"></b> <b name="name" value="value"></b> </a></root>XML;$xml = simplexml_load_string($s);foreach($xml as $item1) { $r = array(); foreach($item1 as $item2) { $t = array(); foreach($item2->attributes() as $k=>$v) { $t[] = array($k => "$v"); } $r[] = $t; } $res[] = $r;}print_r($res);<div class="clear"> </div>