复杂字符串如下:

$_xml=<<<_xml
<?xml version="1.0" encoding="utf-8"?>
<root> <version>1.0</version>
<version>2.0</version>
<version>3.0</version>
<info>xml解析测试</info> <user>
<name>党兴明</name>
<url>http://www.baidu.com</url>
<author sex="男" height="180">我我我</author>
</user> <user>
<name>周林</name>
<url>http://www.baidu.com</url>
<author sex="女" height="170">谁谁谁</author>
</user> <user>
<name>电驴</name>
<url>http://www.baidu.com</url>
<author sex="男">姓黄的</author>
</user> </root>
_xml;

1 生成XML文件

    //创建一个simpleXML对象,传入XML字符串
$_sxe = new SimpleXMLElement($_xml);
//生成XML文件
$_sxe->asXML('test.xml');

2 载入XML文件

    //使用simpleXML载入
$_sxe = simplexml_load_file('test.xml');

3 解析载入的XML文件

    //
echo $_sxe->asXML();
//
print_r($_sxe);
//
var_dump($_sxe);
//
Reflection::export(new ReflectionClass($_sxe));

4 读出XML数据

    //读一级标签的值
echo $_sxe->version;
print_r($_sxe->version);
foreach ($_sxe->version as $v){
echo "<br />$v";
}
//读取二级标签,需要一层一层的指明
echo $_sxe->user[0]->name;
foreach ($_sxe->user as $user){
echo "$user->name";
}
//输出第二个user里的作者的属性
print_r ($_sxe->user[1]->author->attributes());

5 使用xpath()获取节点

    //获取节点
$_name = $_sxe->xpath('/root/user/name');
print_r($_name);

SimpleXML操控XML的更多相关文章

  1. simplexml 对xml的增删改操作

    simplexml 是php 处理xml 文件的一个方法,另一个是dom 处理,这里只说simplexml .目前php 处理xml 用的比较多,比较成熟的还是dom .但dom 在速度和代码量上还是 ...

  2. php simpleXML操作xml的用法

    XML简介 XML是一种流行的半结构化文件格式,以一种类似数据库的格式存储数据.在实际应用中,一些简单的.安全性较低的数据往往使用 XML文件的格式进行存储.这样做的好处一方面可以通过减少与数据库的交 ...

  3. SimpleXML解析xml文件

    SimpleXML 扩展提供了一种获取 XML 元素的名称和文本的简单方式. 与 DOM 或 Expat 解析器相比,SimpleXML 仅仅用几行代码就可以从 XML 元素中读取文本数据. Simp ...

  4. 使用SimpleXML解析xml文件数据

    最近工作要求从一个XML文档中批量读取APK应用数据,自然想到用SimpleXML.经过一段时间摸索,终于成功解析,现在将思路以及代码做下记录: xml文件格式大致如下: <?xml versi ...

  5. 使用SimpleXML 解析xml

    最近搞解析XML搞的我是水深火热的,所以打算对PHP5解析XML做个学习小结.今天介绍下与PHP5捆绑在一起的SimpleXML扩展,这个用于可读写XML的新的API,让解析XML不再繁琐和困难,用起 ...

  6. PHP创建与解析 XML 1 (36)

    一.使用SimpleXML操控XML 要处理XML 文件,有两种传统的处理思路:SAX 和DOM.SAX 基于事件触发机制,对XML 文件进行一次扫描,完成要进行的处理:DOM 则将整个XML 文件构 ...

  7. PHP操作XML方法之SimpleXML

    SimpleXML简介 SimpleXML 扩展提供了一个非常简单和易于使用的工具集,能将XML转换成一个带有一般属性选择器和数组迭代器的对象. 举例XML XML结构部分引用自<<深入理 ...

  8. 【PHP对XML文件的操作技术【完整版】】

    无论是c/c++还是java.c#均有对XML文件操作的技术,PHP对XML文件的操作的技术主要有三种: DOM.XPath.SimpleXml. 一.DOM DOM:Document Object ...

  9. php XML 读写 创建

    一 .XML 读 1.1. 首先同目录定义好一个XML文件 : book.xml <?xml version="1.0" encoding="utf-8" ...

随机推荐

  1. Linux如何进行文件管理

    Linux中的所有数据都被保存在文件中,所有的文件被分配到不同的目录.目录是一种类似于树的结构,称为文件系统.当你使用Linux时,大部分时间都会和文件打交道,通过本节可以了解基本的文件操作,如创建文 ...

  2. Nodejs事件引擎libuv源码剖析之:句柄(handle)结构的设计剖析

    声明:本文为原创博文,转载请注明出处. 句柄(handle)代表一种对持有资源的索引,句柄的叫法在window上较多,在unix/linux等系统上大多称之为描述符,为了抽象不同平台的差异,libuv ...

  3. [UML]UML系列——时序图(顺序图)sequence diagram

    系列文章 [UML]UML系列——用例图Use Case [UML]UML系列——用例图中的各种关系(include.extend) [UML]UML系列——类图Class [UML]UML系列——类 ...

  4. ActiveMQ集群下的消息回流功能

    ------------------------------------------------------------------ "丢失"的消息 如果有broker1和brok ...

  5. html5第二天

    哎..以为自己能每天坚持写呢.前面8天一直在D3的东西..都没有时间研究html5.草草的翻了一下HTML5和CSS3权威指南.对整个页面设计有了一个大概的把握,但是让自己做肯定还会有写问题.暂时ht ...

  6. iOS小知识:计算字符串长度(如果有表情,表情的长度为1)

    在做项目的时候,textField能够输入表情,但是iOS的表情是占两个字符的,再计算字符串长度的时候就和想象的不一样了,所以用了次方法会将表情的长度转成1,最后得到的字符串的长度就是能看到的实际的长 ...

  7. .NET中的异步

    .NET中4种异步方式? ThreadPool.QueueUserworkItem实现 APM模式(就是BeginXXX和EndXXX成对出现.) EAP模式(就是Event based, 准确说来就 ...

  8. linux 复 带进度条

    rsync命令 #rsync -av --progress /mnt/yidong2/full20100526.tar.gz /mnt/yidong1/ 可以实现本机带进度条提示拷贝,可以实现不同机器 ...

  9. mySQL 中主键值自动增加

    转  http://stevenjohn.iteye.com/blog/976397 MySql 主键自动增长 博客分类: DataBase MySQLSQL  创建数据库,创建表. mysql> ...

  10. a标签产生间隙,<a> 包裹 <img> 产生 4px 间隙

    图片文字等inline元素默认是和父级元素的baseline对齐的,而baseline又和父级底边有一定距离(这个距离和 font-size,font-family 相关),所以设置 vertical ...