A função xml_set_element_handler() especifica a função a ser chamada no início e no final dos elementos em um documento XML.
Se for bem-sucedido, a função retornará TRUE. Se falhar, retorna FALSE.
xml_set_element_handler(analisador,início,fim)
parâmetro | descrever |
---|---|
analisador | Obrigatório. Especifica o analisador XML a ser usado. |
começar | Obrigatório. Especifica uma função a ser chamada no início de um elemento. |
fim | Obrigatório. Especifica a função a ser chamada no final do elemento. |
A função especificada pelo parâmetro "start" deve ter três parâmetros:
parâmetro | descrever |
---|---|
analisador | Obrigatório. Especifica uma variável que contém o analisador XML que chama o processador. |
nome | Obrigatório. Especifica uma variável que contém o nome (como uma string) do elemento no arquivo XML que aciona esta função. |
dados | Obrigatório. Especifica uma matriz contendo atributos de elemento (como sequências) no arquivo XML. |
A função especificada pelo parâmetro "end" deve ter dois parâmetros:
parâmetro | descrever |
---|---|
analisador | Obrigatório. Especifica uma variável que contém o analisador XML que chama o processador. |
nome | Obrigatório. Especifica uma variável que contém o nome (como uma string) do elemento no arquivo XML que aciona esta função. |
Nota: Os parâmetros inicial e final podem ser uma matriz contendo referências de objetos e nomes de métodos.
<?php$parser=xml_parser_create();function start($parser,$element_name,$element_attrs) { switch($element_name) { case "NOTA": echo "-- Nota --<br />"; "TO": echo "Para: "; break "FROM": echo "From: "; break "HEADING": echo "Título:"; echo "Mensagem: "; } }function stop($parser,$element_name) { echo "<br />"; function char($parser,$data) { echo $data; ,"stop");xml_set_character_data_handler($parser,"char");$fp=fopen("test.xml","r");enquanto ($data=fread($fp,4096)) { xml_parse($parser,$data,feof($fp)) ou die (sprintf("Erro XML: %s na linha %d", xml_error_string(xml_get_error_code($parser )), xml_get_current_line_number($parser))); }xml_parser_free($parser);?>
A saída do código acima é semelhante a esta:
-- Nota --Para: ToveFrom: JaniHeading: ReminderMessage: Não se esqueça de mim neste fim de semana!