发布网友 发布时间:2022-04-06 05:08
共1个回答
热心网友 时间:2022-04-06 06:37
<?xml version="1.0" encoding="utf-8"?>
<config><db><servicer>localhost1</servicer><root>root</root><pw>123</pw></db><smarty></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_mp($configs);