PHP libxml 简介

libxml 函数和常量与 SimpleXML, XSLT 以及 DOM 一起使用。


安装

这些函数需要 libxml 程序包。在 xmlsoft.org 下载


PHP libxml 函数

PHP: 指示支持该函数的最早的 PHP 版本。

函数 描述
libxml_clear_errors() 清空 libxml 错误缓冲。
libxml_disable_entity_loader() Enables the ability to load external entities
libxml_get_errors() 检索错误数组。
libxml_get_last_error() 从 libxml 检索最后的错误。
libxml_set_external_entity_loader() 更改默认的外部实体加载器
libxml_set_streams_context() 为下一次 libxml 文档加载或写入设置流环境。
libxml_use_internal_errors() 禁用 libxml 错误,允许用户按需读取错误信息。

PHP 预定义 libxml 常量

常量 描述
LIBXML_BIGLINES 使大于65535的行号正确上报
LIBXML_COMPACT 设置小型节点分配优化。会改善应用程序的性能。
LIBXML_DTDATTR 设置默认 DTD 属性。
LIBXML_DTDLOAD 加载外部子集。
LIBXML_DTDVALID 通过 DTD 进行验证。
LIBXML_HTML_NOIMPLIED 设置 HTML_PARSE_NOIMPLIED 标志。 这会关闭自动添加隐含的 html/body 元素
LIBXML_HTML_NODEFDTD 设置 HTML_PARSE_NODEFDTD 标志。 如果没有找到文档类型,这会阻止添加默认文档类型
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_PEDANTIC 设置 XML_PARSE_PEDANTIC 标志。 这会启用迂腐的错误报告
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)。
LIBXML_SCHEMA_CREATE 在 XSD 模式验证期间创建默认值或固定值节点