Definisi dan Penggunaan
Fungsi xml_set_unparsed_entity_decl_handler()
digunakan untuk menentukan fungsi yang akan dipanggil ketika parser merupakan entitas yang tidak diurai dalam dokumen XML.
Catatan: Parameter handler juga bisa berupa array yang berisi referensi objek dan nama metode.
Syntax
xml_set_unparsed_entity_decl_handler(parser, handler)
Nilai Parameter
Parameter | Deskripsi |
---|---|
parser | Required. Menentukan parser XML yang akan digunakan |
handler | Required.Menentukan fungsi yang akan dipanggil jika parser XML menemukan deklarasi entitas eksternal dengan deklarasi NDATA. Fungsi tersebut harus menerima enam parameter: $parser – Variabel yang berisi parser XML yang memanggil handler $entity_name – Variabel yang berisi nama entitas $base – Basis untuk menyelesaikan pengidentifikasi sistem (system_id) dari entitas eksternal. Saat ini, ini selalu berupa string kosong $system_id – Pengidentifikasi sistem dari entitas eksternal $public_id – Pengidentifikasi publik dari entitas eksternal $notation_name – Nama notasi entitas ini |
Detail Teknis
Return Value: | TRUE jika sukses . FALSE jika gagal |
---|---|
PHP Version: | 4.0+ |
Contoh
Buat parser XML, setel handler data karakter, setel handler deklarasi entitas yang tidak diuraikan dan parsing dokumen XML:
<?php $parser=xml_parser_create(); function char($parser,$data) { echo $data; } function unparsed_ent_handler($parser,$entname,$base,$sysID,$pubID,$notname) { print "$entname<br>"; print "$sysID<br>"; print "$pubID<br>"; print "$notname<br>"; } xml_set_character_data_handler($parser,"char"); // Siapkan penangan deklarasi entitas yang tidak diurai 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); fclose($fp); ?>