ฟังก์ชัน PHP xml_set_external_entity_ref_handler()
การกำหนดและการใช้งาน
ฟังก์ชัน xml_set_external_entity_ref_handler() กำหนดฟังก์ชันที่จะเรียกใช้เมื่อตัวแปรที่ประกาศรายการทางด้านระบบถูกหาพบในเอกสาร XML
ถ้าตัวแปรที่ประกาศรายการทางด้านระบบสร้างสำเร็จ ฟังก์ชันจะกลับค่า true อย่างเรียบร้อย; ไม่เช่นนั้นกลับค่า false
ภาษาเขียน
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 Error: %s at line %d", xml_error_string(xml_get_error_code($parser)), xml_get_current_line_number($parser))); } xml_parser_free($parser); ?>