Funkcja PHP xml_set_unparsed_entity_decl_handler()
Definicja i użycie
Funkcja xml_set_unparsed_entity_decl_handler() określa funkcję wywoływane podczas napotkania deklaracji nie do zinterpretowania (NDATA) nazwy encji.
Jeśli procesor zostanie pomyślnie utworzony, funkcja zwróci true; w przeciwnym razie zwróci false.
Gramatyka
xml_set_unparsed_entity_decl_handler(parser,handler)
Parametry | Opis |
---|---|
parser | Wymagane. Określa używany parser XML. |
handler | Wymagane. Określa funkcję. |
przez handler Funkcja określona przez parametry musi mieć sześć parametrów:
Parametry | Opis |
---|---|
parser | Wymagane. Określa zmienną, która zawiera XML parser wywołujący procesor. |
name | Wymagane. Określa zmienną, która zawiera nazwę encji. |
base |
Wymagane. Określa zmienną, która zawiera podstawę do analizy systemowego identyfikatora encji (system_id). Obecnie ten parametr jest zazwyczaj ustawiany na pustą ciąg liter. |
system_id | Wymagane. Określa zmienną, która zawiera systemowy identyfikator encji. |
public_id | Wymagane. Określa zmienną, która zawiera publiczny identyfikator encji. |
notation | Wymagane. Określa zmienną, która zawiera symbol identyfikujący typ danych encji. |
Opis
handler Parametr może być również tablicą, która zawiera odniesienia do obiektów i nazwy metod.
Przykład
<?php $parser=xml_parser_create(); function char($parser,$data) { } function unparsed_ent_handler($parser,$entname, $base,$sysID,$pubID,$notname) { print "$entname"; print "$sysID"; print "$pubID"; print "$notname"; } 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("Błąd XML: %s w wierszu %d", xml_error_string(xml_get_error_code($parser)), xml_get_current_line_number($parser))); } xml_parser_free($parser); ?>