本文实例讲述了php对xml文件的增删改查操作实现方法。分享给大家供大家参考,具体如下:
xml源文件
1
2
3
4
5
|
<? xml version = "1.0" encoding = "utf-8" ?>
< root >
< endTime >2016-08-01</ endTime >
< content >文件内容</ content >
</ root >
|
1
|
$file = 'callBoard.xml' ;
|
查询xml:
1
2
3
4
5
6
7
|
$doc = new DOMDocument(); //实例化对像
$doc ->load( $file ); //载入文件
$data = array ();
$time = $doc ->getElementsByTagName( "endTime" ); //获取元素是title
$dateTime = $time ->item(0)->nodeValue; //对指定元素获取值
$content = $doc ->getElementsByTagName( "content" ); //获取元素是title
$dataContent = $content ->item(0)->nodeValue; //对指定元素获取值
|
更新和创建:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
if ( file_exists ( $file )) //判断文件是否存在
{
//如果存在就更新内容
$doc = new DOMDocument(); //实例化对像
$doc ->load( $file ); //载入文件
$resultDate = $doc ->getElementsByTagName( "endTime" ); //获取元素是dateNumber
$resultDate ->item(0)->nodeValue= $_POST [ 'time' ]; //对指定元素赋值
$resultBall1 = $doc ->getElementsByTagName( "content" ); //获取元素是ball1
$resultBall1 ->item(0)->nodeValue= $_POST [ 'content' ]; //对指定元素赋值
$doc ->save( $file ); //当有用到修改时才用此方法
}
else
{
//如果不存在就创建文件
$doc = new DOMDocument( '1.0' , 'utf-8' ); //申明是XML
$doc ->formatOutput=true; //格式输出
$root = $doc ->createElement( 'root' ); //创建根元素
$endTime = $doc ->createElement( "endTime" , $_POST [ 'time' ]); //创建元素dateNumber 并赋值$arr['resultDate']内容
$content = $doc ->createElement( "content" , $_POST [ 'content' ]); //创建元素ball1 并赋值$arr['resultBall1']内容
$root ->appendChild( $endTime ); //$content元素包含$dateNumber元素
$root ->appendChild( $content ); //$content元素包含$ball1元素
$doc ->appendChild( $root ); //结束建立根元索
$doc ->save( $file ); //生成xml.xml文件
}
|
希望本文所述对大家PHP程序设计有所帮助。