zoukankan      html  css  js  c++  java
  • PHP xml_set_external_entity_ref_handler() 函数

    定义和用法

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

    如果成功,该函数则返回 TRUE。如果失败,则返回 FALSE。高佣联盟 www.cgewang.com

    语法

    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);
    ?>
  • 相关阅读:
    八数码难题 (codevs 1225)题解
    小木棍 (codevs 3498)题解
    sliding windows (poj 2823) 题解
    集合删数 (vijos 1545) 题解
    合并果子 (codevs 1063) 题解
    等价表达式 (codevs 1107)题解
    生理周期 (poj 1006) 题解
    区间 (vijos 1439) 题解
    区间覆盖问题 题解
    种树 (codevs 1653) 题解
  • 原文地址:https://www.cnblogs.com/yc10086/p/13153228.html
Copyright © 2011-2022 走看看