PHP xml_set_external_entity_ref_handler() 函数

定义和用法

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

如果处理器被成功的建立,该函数将返回 true;否则返回 false。

语法

xml_set_external_entity_ref_handler(parser,handler)
Thamani Muhtasari
parser 必需。规定要使用的 XML 解析器。
handler 必需。规定当解析器找到外部实体时被调用的函数。

handler 参数规定的函数必须有六个参数:

Thamani Muhtasari
parser Inahitajika. Inadaiwa na muasi mmoja, inaonyesha kifaa cha kusoma XML cha kufungoa kwa kufungoa kwa kifaa cha kusoma.
name Inahitajika. Inadaiwa na muasi mmoja, inaonyesha jina la kifaa cha kina chini.
base

Inahitajika. Inadaiwa na muasi mmoja, inaonyesha idadi ya jina la kifaa cha usimamizi cha jinsi ya kusoma hifadhi zaidi (system_id ).

Hii, hali wakati huo, thamani hii inatashukurwa kama string yasiyovutwa.

system_id Inayohitajika. Inadai kufikiria kiwango cha uainishaji wa muhimu wa kigeni kwa jina la muhimu wa muhimu.
public_id Inayohitajika. Inadai kufikiria kiwango cha uainishaji wa muhimu wa kigeni kwa jina la muhimu.

Kuelewa

handler Parameter kinwa na kikundi kinachotengenezwa na viungo vya kifaa na jina la uendelevu.

Mfano

<?php
$parser=xml_parser_create();
function char($parser,$data)
  {
  echo $data;
  }
function ext_ent_handler($parser,$ent,$base,$sysID,$pubID)
  {
  echo "$ent";
  echo "$sysID";
  echo "$pubID";
  }
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("Matatizo ya XML: %s katika siri %d", 
  xml_error_string(xml_get_error_code($parser)),
  xml_get_current_line_number($parser)));
  }
xml_parser_free($parser);
?>