×

php读取xml转换成数组

php读取xml转换成数组(php xml转json)

admin admin 发表于2023-04-05 06:35:13 浏览72 评论0

抢沙发发表评论

本文目录一览:

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 '';

}

}

?