(PHP 4, PHP 5, PHP 7, PHP 8)
xml_set_external_entity_ref_handler — 设置外部实体引用处理程序
为 XML 解析器 parser 设置外部实体引用处理函数。
parserXML 解析器。
handler
如果传递 null 或空字符串,处理程序将重置为其默认状态。
如果 handler 是 callable,设置的 callable 将作为处理程序。
如果 handler 是 string,它可以是 xml_set_object()
设置的对象的方法名称。
处理程序的签名必须是:
$parser,$open_entity_names,$base,$system_id,$public_idparseropen_entity_namesbasesystem_id)的基础。
system_idpublic_id
如果实体已经处理,则处理程序应返回 true,否则返回 false。当返回 false 时,XML
解析器将停止解析并且 xml_get_error_code() 将返回
XML_ERROR_EXTERNAL_ENTITY_HANDLING。
总是返回 true。
| 版本 | 说明 |
|---|---|
| 8.0.0 |
parser 现在接受 XMLParser 实例;之前接受有效的 xml resource。
|
| 7.3.0 |
如果扩展是针对 libxml 构建的,则不再忽略 handler 的返回值。以前,会忽略返回值,且解析也从不停止。
|