PHP xml_set_element_handler() 函数
Definicja i użycie
xml_set_element_handler() 函数建立起始和终止元素处理器。
Jeśli处理器被成功的建立,该函数将返回 true;否则返回 false。
Gramatyka
xml_set_element_handler(parser,start,end)
Parametry | Opis |
---|---|
parser | Wymagane. Określa XML parser do użycia. |
start | Wymagane. Określa funkcję wywoływane na początku elementu. |
end | Wymagane. Określa funkcję wywoływane na zakończenie elementu. |
z start Parametr określający funkcję musi mieć trzy parametry:
Parametry | Opis |
---|---|
parser | Wymagane. Określa zmienną, która zawiera XML parser do przetwarzania. |
name | Wymagane. Określa zmienną, która zawiera nazwę elementu, który wywołuje tę funkcję. |
data | Wymagane. Określa tablicę, która zawiera atrybuty elementu. |
z end Parametr określający funkcję musi mieć trzy parametry:
Parametry | Opis |
---|---|
parser | Wymagane. Określa zmienną, która zawiera XML parser do przetwarzania. |
name | Wymagane. Określa zmienną, która zawiera nazwę elementu, który wywołuje tę funkcję. |
Opis
start i end 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 start($parser,$element_name,$element_attrs) { switch($element_name) { case "UWAGA": echo "-- Uwaga --<br />"; break; case "DO": echo "Do: "; break; case "FROM": echo "Od: "; break; case "HEADING": echo "Nagłówek: "; break; case "BODY": echo "Wiadomość: "; } } function stop($parser,$element_name) { echo "<br />"; } function char($parser,$data) { echo $data; } xml_set_element_handler($parser,"start","stop"); xml_set_character_data_handler($parser,"char"); $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); ?>
Wynik:
-- Uwaga -- Do: George Od: John Nagłówek: Przypomnienie Wiadomość: Nie zapomnij o spotkaniu!