دالة PHP xml_set_unparsed_entity_decl_handler()

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

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

إذا تم إنشاء المعالج بنجاح، فإن الوظيفة ستعود صحيحة؛ وإلا ستعود خطأ.

النحو

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.

Examples

<?php
$parser=xml_parser_create();
function char($parser,$data)
  {
  echo $data;
  }
function unparsed_ent_handler($parser,$entname,
$base,$sysID,$pubID,$notname)
  {
  print "$entname";
  print "$sysID";
  print "$pubID";
  print "$notname";
  }
xml_set_character_data_handler($parser,"char");
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);
?>