(PHP 4, PHP 5)
xml_set_element_handler — Ustawia początkową i końcową procedurę obsługi elementu
$parser
, callback $początkowa_procedura_obsługi_elementu
, callback $końcowa_procedura_obsługi_elementu
)
Ustawia funkcje procedury obsługi elementu dla parser
XML.
początkowa_procedura_obsługi_elementu
i
końcowa_procedura_obsługi_elementu
są ciągami znaków zawierającymi
nazwy funkcji, które muszą istnieć podczas wywołania xml_parse()
dla parser
.
parser
Referencja do parsera XML do ustawiania obsługi funkcji początku i końca elementu.
początkowa_procedura_obsługi_elementu
Funkcja nazwana przez początkowa_procedura_obsługi_elementu
musi przyjmować trzy parametry:
$parser
, string $nazwa
, array $atrybuty
)parser
nazwa
nazwa
, zawiera nazwę elementu
dla którego procedura obsługi została wywołana. Jeśli dla tego parsera
włączony jest case-folding,
wówczas nazwa elementu będzie zamieniona na duże litery.
atrybuty
atrybuty
, zawiera tablicę
asocjacyjną z atrybutami elementów (jeśli jakiekolwiek są).
Kluczami tych tablic są nazwy atrybutów a wartościami wartości artybutów.
Nazwy atrybutów są zamieniane na duże litery za pomocą opcji case-folding na tej samej zasadzie jak
nazwy elementów. Wartości atrybutów opcja case-folded nie
dotyczy.
Oryginalna kolejność atrybutów może być odzyskana za pomocą normalnego
przejścia przez atrybuty
używając each().
Pierwszy klucz w tablicy był pierwszym atrybutem itd.
Informacja: Zamiast nazwy funkcji może zostać przekazana tablica zawierająca referencję do obiektu i nazwę metody
końcowa_procedura_obsługi_elementu
Funkcja nazwana przez końcowa_procedura_obsługi_elementu
musi przyjmować dwa parametry:
$parser
, string $nazwa
)parser
nazwa
nazwa
, zawiera nazwę elementu
dla którego procedura obsługi została wywołana. Jeśli dla tego parsera
włączony jest case-folding,
wówczas nazwa elementu będzie zamieniona na duże litery.
Jeśli funkcja procedury obsługi jest podana jako pusty ciąg znaków lub FALSE
,
wówczas procedura obsługi w zapytaniu jest wyłączona.
Zwraca TRUE
w przypadku powodzenia, FALSE
w
przypadku błędu.