PHP 的 SimpleXML 扩展提供了一个非常简单易用的工具集,用于将 XML 转换为可以使用普通属性选择器和数组迭代器进行处理的对象。它是一个 tree_based 解析器,可以很好地处理简单的 XML 文件,但在处理更大和更复杂的 XML 文档时可能会遇到问题。
以下函数在 SimpleXML 扩展中定义 -
simplexml_load_file
simplexml_load_file() 函数将 XML 文件解释为对象 -
给定文件中格式正确的 XML 文档将转换为对象。
filename 参数是一个字符串,表示要解析的 XML 文件。class_name 是可选参数。它指定函数将返回其对象的类。该函数返回一个类 SimpleXMLElement 的对象,其属性包含 XML 文档中保存的数据,如果失败,则返回 false。
例子
请看下面的例子 -
它将产生以下输出 -
(
[Course] => Android
[Subject] => Android
[Company] => qikepu
[Price] => $10
)
simplexml_load_string() 函数将 XML 文件解释为对象。
给定字符串中格式正确的 XML 文档将转换为对象。
$data 参数是一个字符串,表示要解析的 XML 文档。class_name 是可选参数。它指定函数将返回其对象的类。该函数返回一个类 SimpleXMLElement 的对象,其属性包含 XML 文档中保存的数据,如果失败,则返回 false。
例子
请看下面的例子 -
它将产生以下输出 -
(
[Course] => Android
[Subject] => Android
[Company] => qikepu
[Price] => $10
)
simplexml_import_dom
simplexml_import_dom() 函数从 DOM 节点构造 SimpleXMLElement 对象。
此函数获取 DOM 文档的一个节点,并将其转换为 SimpleXML 节点。然后,可以将此新对象用作本机 SimpleXML 元素。
node 参数是 DOM 元素节点。可以给出可选的 class_name,以便 simplexml_import_dom() 将返回 SimpleXMLElement 类的指定子类的对象。此函数返回的值是 SimpleXMLElement 或 失败时为 null 。
例子
请看下面的例子 -
它将产生以下输出 -
获取 Node 值
以下代码显示从 XML 文件获取节点值,XML 应如下所示 -
例子
PHP 代码应如下所示 -
它将产生以下输出 -
Gopal
$30
________________________________________
Hadoop
Satish
3
$50
________________________________________
html
raju
5
$50
________________________________________
Web Technologies
Javed
10
$60
________________________________________