php对xml文件的增删改查操作实现方法分析

yipeiwu_com7年前PHP代码库

本文实例讲述了php对xml文件的增删改查操作实现方法。分享给大家供大家参考,具体如下:

xml源文件

<?xml version="1.0" encoding="utf-8"?>
<root>
 <endTime>2016-08-01</endTime>
 <content>文件内容</content>
</root>

$file='callBoard.xml';

查询xml:

$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;//对指定元素获取值

更新和创建:

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文件
}

PS:这里再为大家提供几款关于xml操作的在线工具供大家参考使用:

在线XML/JSON互相转换工具:
http://tools.jb51.net/code/xmljson

在线格式化XML/在线压缩XML
http://tools.jb51.net/code/xmlformat

XML在线压缩/格式化工具:
http://tools.jb51.net/code/xml_format_compress

XML代码在线格式化美化工具:
http://tools.jb51.net/code/xmlcodeformat

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP针对XML文件操作技巧总结》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《PHP错误与异常处理方法总结》、《PHP基本语法入门教程》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总

希望本文所述对大家PHP程序设计有所帮助。

相关文章

php清空(删除)指定目录下的文件,不删除目录文件夹的实现代码

web 开发中我们可能会碰到需要将某个目录下的所有文件清空,但不删除这个目录下的子目录(当然也不会删除被删除的根目录)的情况。那么对于这种只删除文件而不删除目录的方法,你是如何处理的呢?...

PHP7中I/O模型内核剖析详解

PHP7中I/O模型内核剖析详解

1.同步:我客户端(C端调用者)一个功能,该功能没有结束前,我死等结果。 2.异步:我(c端调用者)调用一个功能,不知道该功能结果,该功能有结果后通知我,即回调通知 3.阻塞:就是调用我...

Linux下快速搭建php开发环境

Linux下快速搭建php开发环境

一、Linux下快速搭建php开发环境 1.安装XAMPP for Linux XAMPP(Apache+MySQL+PHP+PERL)是一个功能强大的建站集成软件包,使用XAMPP可快...

关于BIG5-HKSCS的解决方法

非常苦悶地發現,原來一直困擾的HKSCS問題PHP一直也支持。只不過名稱不叫HK-SCS,叫BIG5-HKSCS。 以下是HK增補字符集的解決方案: HTML頁面設為UTF-8, 寫入數...

海河写的 Discuz论坛帖子调用js的php代码

调用代码 <script language="javascript" src="js_bbs.php?fid=1"></script> js_...