什么是 PHP SimpleXML

SimpleXML 是 PHP 5 中的新特性。

SimpleXML 扩展供应了一种获取 XML 元素的名称和文本的大略办法。

phpsimplexmlelementPHP编程 SimpleXML JavaScript

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

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

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

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

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

当实行类似下列的根本任务时,SimpleXML 利用起来非常快捷:

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

编辑文本节点或属性

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

安装

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

PHP SimpleXML 实例

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

<?xmlversion=\"大众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;?>

运行实例 »

以上代码将输出:

Tove

实例 3

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

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

运行实例 »

以上代码将输出:

note