首页  >  文章  >  后端开发  >  关于PHP Simple XML的相关知识

关于PHP Simple XML的相关知识

jacklove
jacklove原创
2018-05-07 14:48:321488浏览

PHP Simple XML处理最普通的 XML 任务,其余的任务则交由其它扩展处理,本篇对其进行大致的讲解。

什么是 PHP SimpleXML

SimpleXML 是 PHP 5 中的新特性。

SimpleXML 扩展提供了一种获取 XML 元素的名称和文本的简单方式。

与 DOM 或 Expat 解析器相比,SimpleXML 仅仅用几行代码就可以从 XML 元素中读取文本数据。

SimpleXML 可把 XML 文档(或 XML 字符串)转换为对象,比如:

元素被转换为 SimpleXMLElement 对象的单一属性。当同一级别上存在多个元素时,它们会被置于数组中。

属性通过使用关联数组进行访问,其中的索引对应属性名称。

元素内部的文本被转换为字符串。如果一个元素拥有多个文本节点,则按照它们被找到的顺序进行排列。

当执行类似下列的基础任务时,SimpleXML 使用起来非常快捷:

读取/提取 XML 文件/字符串的数据

编辑文本节点或属性

然而,在处理高级 XML 时,比如命名空间,最好使用 Expat 解析器或 XML DOM。

安装

从 PHP 5 开始,SimpleXML 函数是 PHP 核心的组成部分。无需安装就可以使用这些函数。

PHP SimpleXML 实例

假设我们有如下的 XML 文件,"note.xml":

fe7af9798719d1b579cc20b1988aba428197c7d9a62aa70b2f07974ee724bef205034471df6398a62d5708f78b78e0acTove2d00897fd4b69f53670a45a271ef43e0    66fd2ada9ebb04d4250c850dc1e3737eJani73e20527c4b39a5569bf640e17eb894e    6568632082b0fe812193cfc2f7a972bbReminder8d55798a575f05ef42fd91f89ae99e34    6c04bd5ca3fcae76e30b72ad730ca86dDon't forget me this weekend!36cc49f0c466276486e50c850b7e49569cdbc43ffb8d51970a9118e67b3fe241

现在我们想要输出上面的 XML 文件的不同信息:

实例 1

输出 $xml 变量(是 SimpleXMLElement 对象)的键和元素:

<?php$xml=simplexml_load_file("note.xml");print_r($xml);?>

运行实例 »

以上代码将输出:

SimpleXMLElement Object ( [to] => Tove [from] => Jani [heading] => Reminder [body] => Don&#39;t forget me this weekend! )

实例 2

输出 XML 文件中每个元素的数据:

<?php$xml=simplexml_load_file("note.xml");echo $xml->to . "<br>";echo $xml->from . "<br>";echo $xml->heading . "<br>";echo $xml->body;?>

运行实例 »

以上代码将输出:

ToveJaniReminderDon't forget me this weekend!

实例 3

输出每个子节点的元素名称和数据:

<?php$xml=simplexml_load_file("note.xml");echo $xml->getName() . "<br>"; 
foreach($xml->children() as $child){
    echo $child->getName() . ": " . $child . "<br>";}?>

运行实例 »

以上代码将输出:

note
to: Tovefrom: Janiheading: Reminderbody: Don't forget me this weekend!

本篇对PHP Simple XML处理最普通的 XML 任务的讲解,更多的学习资料清关注php中文网即可观看。。

相关推荐:

关于PHP XML DOM的相关知识点

关于PHP XML Expat 解析器的基础

关于PHP 数据库 ODBC的相关内容

以上是关于PHP Simple XML的相关知识的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn