PHP xml_set_notation_decl_handler() 函数

定义和用法

xml_set_notation_decl_handler() 函数规定当解析器在 XML 文档中找到符号声明时被调用的函数。

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

注释:“符号声明”,英文为 notation declaration,也有部分文献译为“注释声明”。

语法

xml_set_notation_decl_handler(parser,အသုံးပြုသူ)
အချက်အလက် ဖော်ပြ
parser 必需。规定要使用的 XML 解析器。
အသုံးပြုသူ 必需。规定当解析器找到符号声明时被调用的函数。

အသုံးပြုသူ 参数规定的函数必须有六个参数:

အချက်အလက် ဖော်ပြ
parser တစ်ခုချင်းသားဖြစ်သည်။ ပြုလုပ်သူကို အသုံးပြုသော XML ပြည့်ပြည့်အချက်အလက်ကို အသုံးပြုသော လိပ်မာန်အမှတ်အသားကြီးများကို ချမှတ်သည်。
name တစ်ခုချင်းသားဖြစ်သည်။ အကိုက်ခံအဖွဲ့အစည်းများ၏ အမည်ကို အသုံးပြုသော လိပ်မာန်အမှတ်အသားကြီးများကို ချမှတ်သည်。
base

တစ်ခုချင်းသားဖြစ်သည်။ အကိုက်ခံအဖွဲ့အစည်းများ၏ ပေါ်ပေါက်ခြင်းအမှတ်အသားပေးသော လိပ်မာန်အမှတ်အသားကို အသုံးပြုသော လိပ်မာန်အမှတ်အသားကြီးများကို ချမှတ်သည်。

လက်ရှိတွင် ဤအချက်အလက်ကို မမှန်မမှားမီ လွှတ်တော်တော်မူထားသည်。

system_id တစ်ခုချင်းသားဖြစ်သည်။ အကိုက်ခံအဖွဲ့အစည်းများ၏ ပေါ်ပေါက်ခြင်းအမှတ်အသားပေးသော လိပ်မာန်အမှတ်အသားကို အသုံးပြုသော လိပ်မာန်အမှတ်အသားကြီးများကို ချမှတ်သည်。
public_id တစ်ခုချင်းသားဖြစ်သည်။ အကိုက်ခံအဖွဲ့အစည်းများ၏ ပေါ်ပေါက်ခြင်းအမှတ်အသားပေးသော လိပ်မာန်အမှတ်အသားကို အသုံးပြုသော လိပ်မာန်အမှတ်အသားကြီးများကို ချမှတ်သည်。
notation စက်တင်သည်။ အလို့ငှာ သုံးပြီး သတ္တုဆိုင်ရာ အမှတ်အသား ပြောင်းလဲခြင်း ကို ချမှတ်သည်။

အကျဉ်း

အသုံးပြုသူ ပါဝင်နိုင်ပါသော ပါဝင်ခြင်း သည် အပိုင်းစံ တစ်ခု ဖြစ်ပြီး အပိုင်းစံ ထဲမှ အရာဝတ္တု မှတ်ချက် နှင့် ဓာတ်ပြား အမည် ဖြင့် ဖွဲ့စည်းထားသော အပိုင်းစံ ဖြစ်သည်။

အကျိုးသက်

<?php
$parser=xml_parser_create();
function char($parser,$data)
  {
  echo $data;
  }
function not_decl_handler($parser,$not,$base,$sysID,$pubID)
  {
  echo "$not<br />";
  echo "$sysID<br />";
  echo "$pubID<BR />";
  }
xml_set_character_data_handler($parser,"char");
xml_set_notation_decl_handler($parser, "not_decl_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);
?>