xml_set_external_entity_ref_handler
(PHP 4, PHP 5)
xml_set_external_entity_ref_handler — Külső egyedek kezelésére rendel függvényt az elemzőhöz
LeÃrás
A parser paraméterben megjelölt XML elemzÅ‘ külsÅ‘ egyedeket (external entity) kezelÅ‘ függvényét állÃtja be, amelynek a nevét a handler paraméterben kell átadni. Ennek a függvénynek már léteznie kell, amikor a parser elemzÅ‘vel meghÃvásra kerül az xml_parse() függvény.
A handler -ben megnevezett függvénynek öt paramétert kell fogadnia és integer értéket visszaadnia. Ha a kezelÅ‘függvény FALSE-t ad vissza (ami megegyezik azzal az esettel ha nem ad vissza semmilyen értéket), az XML elemzÅ‘ XML_ERROR_EXTERNAL_ENTITY_HANDLING hibával leáll, amit az xml_get_error_code() függvénnyel lehet akkor kiolvasni. A függvény prototÃpusa a következÅ‘:
- 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.
- open_entity_names
- A második paraméter, open_entity_names , szóközzel elválaszott lista az elemző számára még függőben levő összes egyed nevével, beleértve a hivatkozott egyed nevét is.
- base
- Ez tartalmazná azt az "alapot", amivel külsÅ‘ egyedek rendszerazonosÃtóját (system_id ) fel lehetne oldani. Ez a paraméter jelenleg üres sztringet ad.
- system_id
- A negyedik paraméter, system_id , ami az egyed deklarációjában szereplÅ‘ rendszerazonosÃtót tartalmazza.
- public_id
- Az ötödik paraméter, public_id , az egyed-deklarációban meghatározott nyilvános azonosÃtó, vagy üres sztring, ha nincs ilyen. Az XML specifikációnak megfelelÅ‘en ebben a paraméterben a szóközök normalizálva lesznek.
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.