本文目录一览:
PHP XML转数组问题,求帮忙;
看看这样输出什么
if (file_exists('test.xml'))
{
$xml = simplexml_load_file('XML文件名');
var_dump($xml);
}
然后就是数组转换了
PHP xml转换成数组
xml转array方法没错,只是xml中有三个list,而数组中却不能出现三个$arr['list'],所以这个方法自动把三个list中的内容放进了一个二维数组中。
可以尝试直接取$arr['list'],取出结果应该就是 Array ( [0] = 1 [1] = 2 [2] = 3 ) 了。
xml 怎样通过php解析到二维数组里面
?xml version="1.0" encoding="utf-8"?
configdbservicerlocalhost1/servicerrootroot/rootpw123/pw/dbsmarty/smarty/config
?php
$doc = new DOMDocument('1.0','utf-8');
$doc-load("config.xml");
$roots=$doc-documentElement;//获取根节点也就是config(仅有一个)
$childs=$roots-childNodes;//获取根节点下所有子节点也就是 db smarty
for($i=0;$i$childs-length;$i++){ //按照根节点下的子节点数量进行循环存入数组
$config_item=$childs-item($i); //具体获得db smarty
$configs[$config_item-nodeName]=array();//将db smarty这两个子节点的名称作为数据存入数组中
$items=$config_item-childNodes; //获得db smarty下的所有子节点
for($j=0;$j$items-length;$j++){//按照db smarty下所有子节点数进行循环将db smarty下的子节点名与值以二维数组存入
$item=$items-item($j); //通过循环获取每个db smarty 下的子节点
$configs[$config_item-nodeName][$item-nodeName]=$item-nodeValue;
}//二维数组的书写
}
var_dump($configs);
php 如何获取XML 并转成2维数组
?php
/**
* 功能:解析xml数据转换成二维数组
*
* @param string $dataXml
* @return array
*/
public static function getXmlData ( $strXml ) {
$pos = strpos($strXml, 'xml');
if ($pos) {
$xmlCode =simplexml_load_string($strXml,'SimpleXMLElement', LIBXML_NOCDATA);
$arrayCode=self::get_object_vars_final($xmlCode);
return $arrayCode ;
} else {
return '';
}
}
?