xml_set_element_handler

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

xml_set_element_handler -- 建立起始和終止元素處理器

說明

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

parser 參數特殊的 XML 解析器建立元素處理器函數。參數 start_element_handlerend_element_handler 為表示函數名稱的字串,這些函數必須在為 parser 特殊的解析器呼叫 xml_parse() 函數時已存在。

start_element_handler 參數命名的函數名必須接受三個參數: start_element_handler ( resource parser, string name, array attribs )

parser

第一個參數 parser 為指向要呼叫處理器的 XML 解析器的指標。

name

第二個參數 name 為該處理器為之被呼叫的元素名。若果大小寫折疊(case-folding)對該解析器有效,元素名將用大寫字母表示。

attribs

第三個參數 attribs 為一個包括有對應元素的屬性的陣列(若果該元素有屬性)。陣列元素的下標為屬性名,元素的值即為屬性的值。屬性名將以和元素名同樣的標準進行大小寫折疊(case-folded),其值進行大小寫折疊。

屬性的原始順序將會被參數保留,用 each() 函數遍歷 attribs 時,該陣列下表的順序和屬性的順序相同。

end_element_handler 參數命名的函數名必須接受兩個參數: end_element_handler ( resource parser, string name )

parser

第一個參數 parser 為指向要呼叫處理器的 XML 解析器的指標。

name

第二個參數 name 為該處理器為之被呼叫的元素名。若果大小寫折疊(case-folding)對該解析器有效,元素名將用大寫字母表示。

若果處理器函數名被設定為空字串或是 FALSE,則該有問題的處理器將被屏蔽。

若果處理器被成功的建立,該函數將返回 TRUE;若果 parser 指向的不是合法的解析器,函數該函數將返回 FALSE

注: 除了函數名,還可以用一個陣列作參數,該陣列由一個物件名和該對象的一個方法名兩個元素組成。