【转】XPath对XML文件查找及修改

<?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);  //debug
	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");
}
/*End of PHP*/
来自:http://www.oschina.net/code/snippet_167160_5353

posted on 2013-06-20 21:43  一根烟的寂寞  阅读(177)  评论(0)    收藏  举报

导航