进入 nav导航


123123 官方发布-文章系统
58| 查看详情 | 编辑更新

PHP SimpleXML


PHP SimpleXML 处理最普通的 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":

<?xml version="1.0" encoding="ISO-8859-1"?><note><to>Tove</to>    <from>Jani</from>    <heading>Reminder</heading>    <body>Don't forget me this weekend!</body></note>

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

实例 1

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

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


运行实例 »

以上代码将输出:

SimpleXMLElement Object ( [to] => Tove [from] => Jani [heading] => Reminder [body] => Don'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 SimpleXML 的信息

如需了解更多关于 PHP SimpleXML 函数的信息,请访问我们的 PHP SimpleXML 参考手册




PHP 5 SimpleXML 函数


PHP SimpleXML 简介

SimpleXML 扩展提供了一种获取 XML 元素的名称和文本的简单方式,只要您知道 XML 文档的布局。

SimpleXML 转换 XML 文档到 SimpleXMLElement 对象。

通过正常的属性选择器和数组迭代器,这个对象能够像其他对象一样被处理。

提示:与 DOM 或者 Expat 解析器比较,SimpleXML 只需要几行代码就能读取元素中的文本数据。


安装

SimpleXML 扩展需要 PHP 5 支持。

自 PHP 5 起,SimpleXML 函数是 PHP 核心的组成部分。无需安装即可使用这些函数。


PHP 5 SimpleXML 函数

函数描述
__construct()创建一个新的 SimpleXMLElement 对象。
addAttribute()给 SimpleXML 元素添加一个属性。
addChild()给 SimpleXML 元素添加一个子元素。
asXML()格式化 XML(版本 1.0)中的 SimpleXML 对象的数据。
attributes()返回 XML 标签的属性和值。
children()查找指定节点的子节点。
count()计算指定节点的子节点个数。
getDocNamespaces()返回文档中的声明的命名空间。
getName()返回 SimpleXML 元素引用的 XML 标签的名称。
getNamespaces()返回文档中使用的命名空间。
registerXPathNamespace()为下一个 XPath 查询创建命名空间上下文。
saveXML()asXML() 的别名。
simplexml_import_dom()从 DOM 节点返回 SimpleXMLElement 对象。
simplexml_load_file()转换 XML 文件为 SimpleXMLElement 对象。
simplexml_load_string()转换 XML 字符串为 SimpleXMLElement 对象。
xpath()运行对 XML 数据的 XPath 查询。

PHP 5 SimpleXML 迭代函数

函数描述
current()返回当前元素。
getChildren()返回当前元素的子元素。
hasChildren()检查当前元素是否有子元素。
key()返回当前键。
next()移动到下一个元素。
rewind()倒回到第一个元素。
valid()检查当前元素是否有效。


|发布人 : 1 发布时间: 1970-01-01 08:33
|留言发给站长
Column 1 Column 2 Column 3
R1C1 R1C2 R1C3
Item Item Item
























---------------









右边分栏
dfasdfa
Flex item 2
Flex item 3














0.026489s