当前位置: 首页 > 图文教程 > 网络编程 > PHP > php xml文件操作代码(一)

PHP
PHP学习中遇到的问题,请高手帮忙 - PHPchina
如何获取IIS虚拟目录的绝对路径 - PHPchina
常常说的SQL注入是怎么做的? - PHPchina
怎么对网站的Alexa排名的数据的采集? - PHPchina
遇到一个session丢失的问题。打开含有mediaplayer播放器的页面,会导致session丢失 -
做小偷遇到一个基础问题.请指教 - PHPchina
php5如何连接ACCESS 2003 - PHPchina
帮找下错误 - PHPchina
split 函数的一个问题 - PHPchina
一个全站系统的数据库设计问题,望大家都来帮帮忙 - PHPchina
分享我的PHP配置心得包含MYSQL5乱码解决 - PHPchina
深入浅出分析Linux设备驱动程序中断 (1)(3)
深入浅出分析Linux设备驱动程序中断 (1)(2)
深入浅出分析Linux设备驱动程序中断 (1)
OpenSSH可实现一次性自动管理多台服务器
如何利用程序循环来控制Perl脚本流程
PHP5应用笔记之Cookie实用攻略(上)
从失败中涉取经验 网站设计的十种常见错误
连载1:利用PHP创建由Oracle 驱动的SOAP服务
连载2:利用PHP创建由Oracle 驱动的SOAP服务

PHP 中的 php xml文件操作代码(一)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 153 ::
收藏到网摘: n/a

创建SimpleXML对象 学习操作xml的朋友可以看看。 example.xml文件:
复制代码 代码如下:

<?php
$xml = simplexml_load_file('example.xml'); //创建SimpleXML对象
print_r($xml); //输出XML
?>

复制代码 代码如下:

<?xml version='1.0'?>
<departs>
<depart>
<name>production support</name>
<employees>
<employee>
<serial_no>100001</serial_no>
<name>Simon</name>
<age>24</age>
<birthday>1982-11-06</birthday>
<salary>5000.00</salary>
<bonus>1000.00</bonus>
</employee>
<employee>
<serial_no>100002</serial_no>
<name>Elaine</name>
<age>24</age>
<birthday>1982-01-01</birthday>
<salary>6000.00</salary>
<bonus>2000.00</bonus>
</employee>
</employees>
</depart>
<depart>
<name>testing center</name>
<employees>
<employee>
<serial_no>110001</serial_no>
<name>Helen</name>
<age>23</age>
<birthday>1983-07-21</birthday>
<salary>5000.00</salary>
<bonus>1000.00</bonus>
</employee>
</employees>
</depart>
</departs>

复制代码 代码如下:

<?php
$xml = simplexml_load_file('example.xml'); //创建SimpleXML对象
var_dump($xml); //输出XML
?>

复制代码 代码如下:

<?php
$xml = simplexml_load_file('example.xml'); //读取XML文件
foreach($xml->depart as $a) //循环读取XML数据中的每一个depart标签
{
echo "$a->name <BR>"; //输出其中的name属性
}
?>

复制代码 代码如下:

<?php
$xml = simplexml_load_file('example.xml'); //读取XML文件
echo $xml->depart->name[0]; //输出节点
?>

复制代码 代码如下:

<?php
$xml = simplexml_load_file('example.xml');
foreach ($xml->depart->children() as $depart) //循环读取depart标签下的子标签
{
var_dump($depart); //输出标签的XML数据
}
?>

复制代码 代码如下:

<?php
$xml = simplexml_load_file('example.xml'); //读取XML文件
$result = $xml->xpath('/departs/depart/employees/employee/name'); //定义节点
var_dump($result); //输出节点
?>

复制代码 代码如下:

<?php
$xml = simplexml_load_file('example.xml'); //读取XML
$xml->depart->name[0] = "Human Resource"; //修改节点
?>

复制代码 代码如下:

<?php
$xml = simplexml_load_file('example.xml'); //读取XML数据
echo $xml->asXML(); //标准化XML数据
?>

复制代码 代码如下:

<?php
$xml = simplexml_load_file('example.xml'); //读取XML数据
$newxml = $xml->asXML(); //标准化XML数据
$fp = fopen("newxml.xml", "w"); //打开要写入XML数据的文件
fwrite($fp, $newxml); //写入XML数据
fclose($fp); //关闭文件
?>