xml_set_element_handler

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

xml_set_element_handler -- Nyitó és záró jelöléseket kezelő függvényt rendel az elemzőhöz

Leírás

bool xml_set_element_handler ( resource parser, callback start_element_handler, callback end_element_handler )

A parser paraméterben megjelölt XML elemző elemek nyitó- és zárócímkéit kezelő függvényeit állítja be, amelyeknek a nevét a start_element_handler és end_element_handler paraméterben kell átadni. Ezeknek a függvényeknek már létezniük kell, amikor a parser elemzővel meghívásra kerül az xml_parse() függvény.

A start_element_handler-ben megnevezett függvénynek három paramétert kell fogadnia, a függvény prototípusa a következő: start_element_handler ( resource parser, string name, array attribs )

parser

Az első paraméter, parser, hivatkozás az aktuális XML elemzőre, amely ezt a kezelőfüggvényt meghívta és használja.

name

A második sztring típusú paraméter, name, az elem nevét tartalmazza. Ha a betű-egységesítés (case-folding) be van kapcsolva az elemzőben, akkor az elem neve csupa nagy betűvel fog szerepelni.

attribs

A harmadik paraméter, attribs asszociatív tömbjében kerülnek átadásra az elem attribútumai, ha vannak. A tömb kulcsai az attribútumok nevei, míg a hozzájuk tartozó értékek az attribútumok értékei. Az attribútumok neveinek írásmódja az elemek nevéhez hasonlóan egységesítve (case-folded) lesznek, de az attribútum-értékek nem.

A tömb megőrzi az attribútumok eredeti sorrendjét, ezért each() függvénnyel a tömbbön végiglépkedve az első bejegyzés az előfordulás szerinti első attribútumé lesz, és így tovább.

Az end_element_handler-ben megnevezett függvénynek két paramétert kell fogadnia, a függvény prototípusa a következő: end_element_handler ( resource parser, string name )

parser

Az első paraméter, parser, hivatkozás az aktuális XML elemzőre, amely ezt a kezelőfüggvényt meghívta és használja.

name

A második sztring típusú paraméter, name, az elem nevét tartalmazza. Ha a betű-egységesítés (case-folding) be van kapcsolva az elemzőben, akkor az elem neve csupa nagy betűvel fog szerepelni.

Ha a függvény neve helyett üres sztring vagy FALSE szerepel, akkor a kérdéses kezelőfüggvény nem elérhető, le van tiltva.

TRUE-t ad vissza, ha a kezelőt sikeresen beállította, és FALSE-t, ha a parser nem érvényes erőforrás.

Megjegyzés: A függvény neve helyett egy tömböt is átadhatsz, ami egy objektum referenciát és egy metódus nevet kell tartalmazzon.