xml_set_element_handler
(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.
Note: A függvény neve
helyett egy tömböt is átadhatsz, aminek egy objektum referenciát
és egy metódus nevet kell tartalmaznia.