xml_set_default_handler

(PHP 4, PHP 5)

xml_set_default_handlerÖntanımlı eylemciyi belirler

Açıklama

bool xml_set_default_handler ( resource $çözümleyici , callback $eylemci )

çözümleyici ile belirtilen XML çözümleyici için öntanımlı eylemciyi belirler.

Değiştirgeler

çözümleyici

xml_parser_create() ve xml_parser_create_ns() işlevleri tarafından döndürülen bir XML özkaynağı.

eylemci

xml_parse() işlevi çözümleyici için çağrıldığında mevcut olması gereken işlevin ismini içeren dizge.

İsmi eylemci ile belirtilen işlevin iki değiştirge kabul etmesi gerekir:

eylemci ( resource $çözümleyici , string $veri )
çözümleyici
İlk değiştirge, eylemci işlevi çağıran XML çözümleyicinin tanıtıcısıdır.
veri
İkinci değiştirge olan veri, karakter verisini içerir. Dizge, XML bildirimi, belge türü bildirimi veya diğer eylemciler tarafından ele alınmayan başka bir verileri içerebilir.

eylemci değiştirgesinde işlev olarak boş bir dizge veya FALSE belirtilirse ilgili eylemci iptal edilir.

Bilginize: Bir işlev ismi yerine, bir nesneye gönderim ve bir yöntem ismi içeren bir dizi de kullanılabilir.

Dönen Değerler

Başarı durumunda TRUE, başarısızlık durumunda FALSE döner.

add a note add a note

User Contributed Notes 2 notes

up
0
anoril at anoril dot com
8 years ago
I have the same issue using two installation of PHP5: on accepts to use the default handler while the other only uses the character_data one.

Maybe a configuration problem...

;) Nonor.
up
0
phillip
9 years ago
it seems to me that in PHP5 the function defined as default-handler (using xml_set_default_handler()) doesen't get passed the cdata anymore:

i.e.:
xml_set_element_handler($this->parser, 'parseSTART', 'parseEND');
xml_set_default_handler($this->parser, 'parseDEFAULT');
function parseSTART() { ... }
function parseEND() { ... }
function parseDEFAULT() { ... }

under PHP5, parseDEFAULT will NOT get passed any cdata, but unter PHP4 it will. at least that's my take on the strange stuff (not) happening after migrating to PHP5.

my solution was to add a xml_set_character_data_handler($parser, 'parseDEFAULT'). it worked for me.
To Top