Podręcznik PHP
Poprzedni |  | Następny

# xml_set_element_handler

(PHP 3 >= 3.0.6, PHP 4, PHP 5)

xml_set_element_handler -- Ustawia początkową i końcową procedurę obsługi elementu

## Opis

bool xml_set_element_handler ( resource parser, callback początkowa_procedura_obsługi_elementu, callback końcowa_procedura_obsługi_elementu )

Ustawia funkcje procedury obsługi elementu dla parsera XML `parser`. `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 parsera `parser`.

Funkcja nazwana przez `początkowa_procedura_obsługi_elementu` musi przyjmować trzy parametry: `początkowa_procedura_obsługi_elementu` ( resource parser, string nazwa, array atrybuty )

`parser`

  Pierwszy parametr, `parser`, jest referencją do parsera XML wywołującego procedurę obsługi.

`nazwa`

  Drugi parametr, `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`

  Trzeci parametr, `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.

Funkcja nazwana przez `końcowa_procedura_obsługi_elementu` musi przyjmować dwa parametry: `końcowa_procedura_obsługi_elementu` ( resource parser, string nazwa )

`parser`

  Pierwszy parametr, `parser`, jest referencją do parsera XML wywołującego procedurę obsługi.

`name`

  Drugi parametr, `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.

Jeśli podane są procedury obsługi zwracana jest wartość `TRUE`. Jeśli `parser` nie jest parserem zwracana jest wartość `FALSE`.

> Notatka: Zamiast nazwy funkcji może zostać przekazana tablica zawierająca referencję do obiektu i nazwę metody

Poprzedni | Spis treści | Następny
xml_set_default_handler | Początek rozdziału | xml_set_end_namespace_decl_handler