دالة PHP xml_set_unparsed_entity_decl_handler()

التعريف والاستخدام

يحدد دالة xml_set_unparsed_entity_decl_handler() الوظيفة التي يتم استدعاؤها عند مواجهة اسم كيان غير قابل للتحليل (NDATA).

إذا تم إنشاء المعالج بنجاح، فإن الوظيفة ستعود إلى true؛ وإلا ستعود إلى false.

النحو

xml_set_unparsed_entity_decl_handler(parser,handler)
المعامل وصف
parser مطلوب. تحديد معالج XML الذي سيتم استخدامه.
handler مطلوب. تحديد وظيفة.

من handler الوظيفة التي يجب أن تحدد المعامل يجب أن يكون لها ستة معاملات:

المعامل وصف
parser مطلوب. تحديد متغير يحتوي على معالج تحليل XML.
name مطلوب. تحديد متغير يحتوي على اسم الكيان.
base

مطلوب. تحديد متغير يحتوي على أساس معرف النظام للكيان (system_id).

حاليًا، عادة ما يتم تعيين هذا المعامل إلى نص فارغ.

system_id مطلوب. تحديد متغير يحتوي على معرف النظام للكيان.
public_id مطلوب. تحديد متغير يحتوي على معرف الكيان العام.
notation مطلوب. تحديد متغير يحتوي على رمز نوع البيانات للكيان.

Description

handler The parameter can also be an array containing object references and method names.

Example

<?php
$parser=xml_parser_create();
function char($parser,$data)
  {
  
  }
function unparsed_ent_handler($parser,$entname,
$base,$sysID,$pubID,$notname)
  {
  print "$entname";
  print "$sysID";
  print "$pubID";
  print "$notname";
  }

xml_set_unparsed_entity_decl_handler($parser,
"unparsed_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);
?>