如何读取xml文件,根据xml节点属性查询并输出xml文件
主要是应用SimpleXML和递归函数来根据key值来查询,并将结果以xml格式输出。
<?php
header("Content-type: text/xml");
//以xml格式输出文件
@$key=$_GET['key'];
$find=false;
//echo $key."<br>";
$xml = simplexml_load_file('codetree.xml');
$part = $xml->tree;
foreach ( $part as $content )
{
//如果查找到了,显示
if ($content['key']==$key)
{
display($content);
exit();
}
//如果没找到,继续查找
else
{
findnext($content,$key);
}
} //显示数据
function display($value)
{
foreach($value as $val)
{
if($val["key"]!="")
{
echo '<tree text="'.$val["text"].'" key="'.$val['key'].'">'."\r\n";
}
else
{
echo '<tree text="'.$val["text"].'" />'."\r\n";
}
display($val);
}
if($value["key"]!="")
{ echo "</tree> \r\n"; }
} function findnext($value,$key)
{
foreach($value as $val)
{
//如果查找到了,显示
if ($val['key']==$key)
{ echo '<tree text="'.$val["text"].'" key="'.$val['key'].'">'."\r\n";
display($val);
exit();
}
//如果没找到,继续查找
else
{
findnext($val,$key);
}
}
}
查询key值为"0-0-0-1-0"的结果。

如何读取xml文件,根据xml节点属性查询并输出xml文件的更多相关文章
- 转 mysql查询结果输出到文件
mysql查询结果输出到文件 mysql查询结果导出/输出/写入到文件 方法一:直接执行命令:mysql> select count(1) from table into outfile ...
- testng.xml文件结构组成及节点属性说明
TestNG的DTD检查文件:http://testng.org/testng-1.0.dtd.PHP 更多testng配置及说明,请移步http://testdoc.org/docmaster?pi ...
- 【转】mysql查询结果输出到文件
转自:http://www.cnblogs.com/emanlee/p/4233602.html mysql查询结果导出/输出/写入到文件 方法一: 直接执行命令: mysql> select ...
- mysql查询结果输出到文件
mysql查询结果导出/输出/写入到文件 方法一: 直接执行命令: mysql> select count(1) from table into outfile '/tmp/test.xls' ...
- 将mysql的查询结果输出到文件
在sql命令中我们可以查询到前数行的表,同时也可以将查询结果输出到txt文档 语句:select * from tablename into outfile 'filename.txt'; 例如:se ...
- CMD 从文件中截取匹配规则字符串并输出到文件
*******************command**********************git diff 8d71d92b2d957fd1b697b4cf785fb984f190e5d2 or ...
- C# 读取XML节点属性值
xml文件格式如下: <?xml version="1.0" encoding="UTF-8" ?> <Product type=" ...
- Linux文件和目录的属性及权限总结
本文讲述的是文件或目录的属性及权限,比如索引节点inode.文件类型.文件权限及属主:还对setuid.setgid及粘贴位进行了相关的讲解.其中,对ln.chmod.chown.chgrp.umas ...
- 文件内容统计:对任意给定的.txt文件进行内容的字符数、行数、单词数进行统计
项目源码地址:https://gitee.com/xjtsh/projects 功能实现: wc.exe -c file.c //返回文件 file.c 的字符数 wc.exe -w file ...
随机推荐
- 使用OData快速构建REST服务
OData是微软支持的一种查询标准,它的第四版使用了REST规范,看起来简洁多了.它的最大的特点是可以在客户端自行配制查询条件,使用它构建REST服务时再也不用担心查询的扩展性问题了. 如下是几个简单 ...
- How to make a combo box with fulltext search autocomplete support?
I would like a user to be able to type in the second or third word from a TComboBoxitem and for that ...
- SQL SERVER SQLOS的任务调度--微软亚太区数据库技术支持组 官方博客
https://blogs.msdn.microsoft.com/apgcdsd/2011/11/23/sql-server-sqlos/
- JavaScript中typeof详解
[范围]typeof返回值范围: typeof返回值对应 类型 结果 String "string" Number "number" Boolean " ...
- matlab colormap
This table lists the built-in colormaps functions. Colormap Name Color Scale parula
- opencv CxImage 互转 (Mat)
//to Mat CxImage img; img.Load("C:\\f.jpg"); uint8_t* buf=NULL; int32_t len=0; bool rs =im ...
- 使用R语言和XML包抓取网页数据-Scraping data from web pages in R with XML package
In the last years a lot of data has been released publicly in different formats, but sometimes the d ...
- iOS:UI简单的总结
UI简单总结: 一.常用单例: NSBundle *bundel = [NSBundle mainBundle]; //加载资源 NSFileManager *fm = [NSFileManager ...
- EasyUI-EasyUI框架入门学习
前言 新项目的开发前端技术打算采用EasyUI框架(基于EasyUI较为丰富的UI组件库),项目组长将前端EasyUI这块的任务分配给了我.在进行开发之前,需要我这菜鸟对EasyUI框架进行一些基础的 ...
- [ACM] POJ 2524 Ubiquitous Religions (并查集)
Ubiquitous Religions Time Limit: 5000MS Memory Limit: 65536K Total Submissions: 23093 Accepted: ...