<Complete Referensi PHP XML
Definisi dan Penggunaan
The xml_set_external_entity_ref_handler() fungsi menetapkan fungsi yang akan dipanggil saat parser menemukan suatu entitas eksternal dalam dokumen XML.
Fungsi ini mengembalikan TRUE pada keberhasilan, atau FALSE pada kegagalan.
Sintaksis
xml_set_external_entity_ref_handler(parser,handler)
Parameter | Deskripsi |
---|---|
parser | Wajib. Menentukan parser XML untuk digunakan |
handler | Wajib. Menentukan fungsi yang akan dipanggil saat parser menemukan suatu entitas eksternal |
Fungsi ditentukan oleh "handler" parameter harus memiliki lima parameter:
Parameter | Deskripsi |
---|---|
parser | Wajib. Menentukan variabel yang berisi parser XML memanggil pawang |
name | Wajib. Menentukan variabel yang berisi nama entitas eksternal |
base | Wajib. Menentukan dasar untuk menyelesaikan sistem identifier (system_id) dari entitas eksternal. Saat ini, ini selalu NULL |
system_id | Wajib. Menentukan sistem pengidentifikasi untuk entitas eksternal |
public_id | Wajib. Menentukan pengenal publik untuk entitas eksternal |
Tips dan Catatan
Note: Parameter handler juga bisa menjadi array yang berisi referensi obyek dan nama metode.
Contoh
<?php
$parser=xml_parser_create();
function char($parser,$data)
{
echo $data;
}
function ext_ent_handler($parser,$ent,$base,$sysID,$pubID)
{
echo "$ent<br />";
echo "$sysID<br />";
echo "$pubID<BR />";
}
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);
?>
<Complete Referensi PHP XML