欢迎访问服务器技术网-www.fuwuqijishu.com

PHP simplexml_load_file() 函数

PHP fuwuqijishu 2年前 (2022-09-04) 26次浏览 0个评论 扫描二维码
文章目录[隐藏]

PHP simplexml_load_file() 函数

PHP SimpleXML 参考手册

实例

转换 XML 文件为 SimpleXMLElement 对象,然后输出对象的键和元素:

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


定义和用法

simplexml_load_file() 函数转换指定的 XML 文件为 SimpleXMLElement 对象。


语法

simplexml_load_file(file,classname,options,ns,is_prefix);

参数 描述
file 必需。规定 XML 文件路径。
classname 可选。规定新对象的 class。
options 可选。规定附加的 Libxml 参数。通过指定选项为 1 或 0(TRUE 或 FALSE,例如 LIBXML_NOBLANKS(1))进行设置。

可能的值:

  • LIBXML_COMPACT – 激活节点的优化配置(可加速应用程序)
  • LIBXML_DTDATTR – 设置默认的 DTD 属性
  • LIBXML_DTDLOAD – 装载额外的子集
  • LIBXML_DTDVALID – 验证 DTD 有效性
  • LIBXML_NOBLANKS – 删除空节点
  • LIBXML_NOCDATA – 将 CDATA 设置为文本节点
  • LIBXML_NOEMPTYTAG – 扩展空标签(例如 <br/> 到 <br></br>),仅在 DOMDocument->save() 和 DOMDocument->saveXML() 函数中有效
  • LIBXML_NOENT – 替代实体
  • LIBXML_NOERROR – 不显示错误报告
  • LIBXML_NONET – 装载文档时停止访问网络
  • LIBXML_NOWARNING – 不显示警告报告
  • LIBXML_NOXMLDECL – 当存储一个文档时放弃 XML 声明
  • LIBXML_NSCLEAN – 删除多余的名称空间声明
  • LIBXML_PARSEHUGE – 设置 XML_PARSE_HUGE 标志,用来放宽解析器的任何强制限制。这将影响诸如文档的最大深度和文本节点大小限制等。
  • LIBXML_XINCLUDE – 使用 XInclude 替代
  • LIBXML_ERR_ERROR – 获取可纠正的错误
  • LIBXML_ERR_FATAL – 获取致命错误
  • LIBXML_ERR_NONE – 不获取错误
  • LIBXML_ERR_WARNING – 获取简单警告
  • LIBXML_VERSION – 获取 libxml 版本(例如 20605 或 20617)
  • LIBXML_DOTTED_VERSION – 获取带点的 libxml 版本(例如 2.6.5 或
    2.6.17)
ns 可选。规定命名空间前缀或 URI。
is_prefix 可选。规定一个布尔值。如果 ns 是前缀则为 TRUE,如果 ns 是 URI 则为 FALSE。默认是 FALSE。

技术细节

返回值: 如果成功则返回 SimpleXMLElement 对象,如果失败则返回 FALSE。
PHP 版本: 5+


更多实例

假设我们有如下的 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>

实例 1

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

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

实例 2

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

<?php
$xml=simplexml_load_file(“note.xml”);
echo $xml->getName() . “<br>”;

foreach($xml->children() as $child)
{
echo $child->getName() . “: ” . $child . “<br>”;
}
?>


PHP SimpleXML 参考手册

喜欢 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

Warning: error_log(/www/wwwroot/fuwiqijishu/wp-content/plugins/spider-analyser/#log/log-2123.txt): failed to open stream: No such file or directory in /www/wwwroot/fuwiqijishu/wp-content/plugins/spider-analyser/spider.class.php on line 2900