PHP xml_set_external_entity_ref_handler() 函数

PHP 教程 · 2019-01-30 20:42:26

定义和用法

xml_set_external_entity_ref_handler() 函数规定当解析器在 XML 文档中找到外部实体时被调用的函数。

如果成功,该函数则返回 TRUE。如果失败,则返回 FALSE。

语法


xml_set_external_entity_ref_handler(parser,handler)


参数 描述
parser 必需。规定要使用的 XML 解析器。
handler 必需。规定当解析器找到外部实体时被调用的函数。

由 "handler" 参数规定的函数必须有五个参数:

参数 描述
parser 必需。规定一个变量,包含调用处理器的 XML 解析器。
name 必需。规定一个变量,包含外部实体名称。
base 必需。规定解析外部实体的系统标识符(system_id)的基础。当前该参数通常都被设置为 NULL。
system_id 必需。规定外部实体的系统标识符。
public_id 必需。规定外部实体的公共标识符。

提示和注释

注释:handler 参数也可以是一个包含对象引用和方法名的数组。

实例


<?php
$parser=xml_parser_create();
function char($parser,$data)
  {
  echo $data;
  }
function ext_ent_handler($parser,$ent,$base,$sysID,$pubID)
  {
  echo "$ent<br />";
  echo "$sysID<br />";
  echo "$pubID<BR />";
  }
xml_set_character_data_handler($parser,"char");
xml_set_external_entity_ref_handler($parser, "ext_ent_handler");
$fp=fopen("test.xml","r");
while ($data=fread($fp,4096))
  {
  xml_parse($parser,$data,feof($fp)) or 
  die (sprintf("XML Error: %s at line %d", 
  xml_error_string(xml_get_error_code($parser)),
  xml_get_current_line_number($parser)));
  }
xml_parser_free($parser);
?>


点击查看所有 PHP 教程 文章: https://codercto.com/courses/l/5.html

查看所有标签

暗趋势

暗趋势

王煜全 / 中信出版集团 / 2019-1 / 59元

《暗趋势》由得到“全球创新260讲”专栏主讲人王煜全,为你揭示藏在科技浪潮中的商业机会,教你获得把握趋势的能力,发现小趋势,抓住大机遇。 《暗趋势》聚焦于改变你生活和未来的产业,深度解读人工智能、混合现实、区块链、生物医疗等你必须关注的科技行业,并分析新科技给企业和个人带来的发展机遇,前瞻性提出企业和个人的思维与行动应对策略。 王煜全作为全球科技前哨侦察兵,以其每年5亿元的科技投资及2......一起来看看 《暗趋势》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

URL 编码/解码
URL 编码/解码

URL 编码/解码

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具