<?php
public function parsexml($menus) {
$result = array();
foreach ($menus as $menu) {
$tmparr = array();
// 处理空文本节点方式a
if ($menu->nodename != '#text') {
// 检索子元素时跳跃过文本节点 - 处理空文本节点方式b
for ($i = 1; $i < $menu->childnodes->length; $i+= 2) {
$anode = $menu->childnodes->item($i);
// 子元素遍历
$anode->childnodes->length > 1 ? $tmparr[$anode->nodename] = $this->parsexml($anode->childnodes) : $tmparr[$anode->nodename] = $anode->nodevalue;
}
array_push($result, $tmparr);
}
}
return $result;
}
$doc = new domdocument();
$doc->load('a.xml');
// 第一种,有空文本节点
$menus = $doc->getelementsbytagname('sitemap')->item(0)->childnodes;
// 第二种,明确指定标签,序列无空文本节点。但子元素仍然有空节点
$xpath = new domxpath($doc);
$query = "/sitemap/child::a";
$menus = $xpath->query($query);教程链接:
随意转载~但请保留教程地址★
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号