PHP xml_set_external_entity_ref_handler() فنکشن
تعریف اور استعمال
xml_set_external_entity_ref_handler() فنکشن بیرونی ایکائی کو پائدھا کرنے کے بعد طلب کی جانے والی فنکشن کو معین کرتی ہے۔
اگر پردازکن کامیابی سے قائم کیا گیا تو اس فنکشن سے true کی واپسی ہوگی؛ نہ تو فالس کی واپسی ہوگی۔
نویگیشن
xml_set_external_entity_ref_handler(parser,handler)
پارامتر | وصف |
---|---|
parser | ضروری ہے۔ استعمال کی جانے والی XML پردازکن کو معین کرتا ہے۔ |
handler | ضروری ہے۔ جب پردازکن بیرونی ایکائی کو پائدھا تو اس کے لئے طلب کی جانے والی فنکشن کو معین کرتا ہے۔ |
کی جانب سے handler پارامتر کا طور پر مقرر کردہ فنکشن کو چھ پارامتروں کا حامل ہونا چاہئے:
پارامتر | وصف |
---|---|
parser | ضروری ہے۔ ایک متغیر معین کرتا ہے جو XML پردازکن کا استعمال کرنے والا ہے۔ |
name | ضروری ہے۔ بیرونی ایکائی کے نام کا متغیر معین کرتا ہے。 |
base |
ضروری ہے۔ ایک متغیر معین کرتا ہے جو بیرونی ایکائی کے معاملے میں سیسٹم کے شناختی عدد (system_id) کی بنیاد کا حامل ہے。 موجودہ میں اس پارامتر کو عام طور پر خالی جملے کے طور پر سیٹ کیا جاتا ہے。 |
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"; 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("خطای XML: %s در خط %d", xml_error_string(xml_get_error_code($parser)), xml_get_current_line_number($parser))); } xml_parser_free($parser); ?>