simplexml_load_file
simplexml_load_file
(PHP 5, PHP 7)
simplexml_load_file - 将XML文件解释为对象
描述
SimpleXMLElement simplexml_load_file ( string $filename [, string $class_name = "SimpleXMLElement" [, int $options = 0 [, string $ns = "" [, bool $is_prefix = false ]]]] )
将给定文件中格式良好的XML文档转换为对象。
参数
filename
XML文件的路径
注意
:Libxml 2不使用URI,所以如果你想通过例如b&c
作为URI参数a
,你必须调用simplexml_load_file(rawurlencode(' http://example.com/?a='。urlencode('b&c')) ))
。从PHP 5.1.0开始,你不需要这样做,因为PHP会为你做到这一点。
class_name
您可以使用此可选参数,以便simplexml_load_file()
将返回指定类的对象。该类应该扩展SimpleXMLElement类。
options
由于PHP 5.1.0和Libxml 2.6.0,您也可以使用该options
参数来指定其他Libxml参数。
ns
名称空间前缀或URI。
is_prefix
如果ns是前缀,则为TRUE;如果是URI,则为FALSE;默认为FALSE。
返回值
返回一个SimpleXMLElement类的对象,其属性包含XML文档中保存的数据,或者失败时返回FALSE
。
警告
此函数可能会返回布尔FALSE,但也可能会返回一个非布尔值,其值为FALSE。 有关更多信息,请阅读布尔部分。 使用===运算符来测试此函数的返回值。
错误/异常
E_WARNING
为XML数据中的每个错误生成一条错误消息。
提示
使用libxml_use_internal_errors()来禁止所有XML错误,然后使用libxml_get_errors()来遍历它们。
例子
Example#1 解释一个XML文档
<?php
// The file test.xml contains an XML document with a root element
// and at least an element /[root]/title.
if (file_exists('test.xml')) {
$xml = simplexml_load_file('test.xml'
print_r($xml
} else {
exit('Failed to open test.xml.'
}
?>
该脚本将在成功时显示:
SimpleXMLElement Object
(
[title] => Example Title
...
)
在这一点上,你可以去使用$ xml-> title和其他元素。
扩展内容
- simplexml_load_string() - 将一串XML解释为一个对象
- SimpleXMLElement :: __ construct() - 创建一个新的SimpleXMLElement对象
- libxml_use_internal_errors() - 禁用libxml错误并允许用户根据需要获取错误信息
← simplexml_import_dom
simplexml_load_string →