php XPath对XML文件查找及修改实现代码

yipeiwu_com6年前PHP代码库
复制代码 代码如下:

<?php
/*
<?xml version="1.0" encoding="utf-8"?>
<article>
<item>
<title name="t1">11</title>
<content>content1</content>
<pubdate>2009-10-11</pubdate>
</item>
<item>
<title name="t2">title2</title>
<content>content2</content>
<pubdate>2009-11-11</pubdate>
</item>
</article>
*/
if(!function_exists('l')) {
function l() {
echo '<br/>***********************************<br />';
}
}
if(file_exists('test10_12.xml')) {
$xml = simplexml_load_file('test10_12.xml');

//利用xpath方法查找节点位置
$query = $xml->xpath('//title[@name="t1"]/ancestor::item');

var_dump($query);
l();

//测试在title节点下新增子节点new
$query[0]->title->addChild('new','new');

//测试在title节点下新增属性fuck
$query[0]->title->addAttribute('fuck','fuck you');

//测试修改content节点值为hello,world
$query[0]->content = 'hello,world';

//不解释,你懂的
$query[0]->asXML("10.xml");
}
?>

相关文章

php命令行(cli)下执行PHP脚本文件的相对路径的问题解决方法

在php命令行下执行.php文件时,执行环境的工作目录(getcwd( ))是php命令程序(php.exe)所在目录,所以如果想在文件内使用相对路径时,要先切换当前的工作目录才行。 小...

php接口数据加密、解密、验证签名

代码很简单,这里就不多废话了,直接奉上代码 复制代码 代码如下: <?php //header('Content-Type: text/xml; charset=utf-8...

PHP依赖注入容器知识点浅析

依赖注入容器理解 耦合 一个好的代码结构设计一定是松耦合的,这也是很多通用设计模式的宗旨,就是把分散在各处的同一个功能的代码汇聚到一起,形成一个模块,然后在不同模块之间通过一些细小的、明...

php防止用户重复提交表单

php防止用户重复提交表单

我们提交表单的时候,不能忽视的一个限制是防止用户重复提交表单,因为有可能用户连续点击了提交按钮或者是攻击者恶意提交数据,那么我们在提交数据后的处理如修改或添加数据到数据库时就会惹上麻烦。...

php中$美元符号与Zen Coding冲突问题解决方法分享

php中$美元符号与Zen Coding冲突问题解决方法分享

Zen Coding插件就不多做介绍了。 众所周知,安装了插件以后,输入$符号会被自动解析为相应的数字1、2、3... 作为一名PHP程序员,想要通过其定义一些自己常用的代码。却发现展开...