Função xml_set_default_handler() do PHP

Definição e uso

A função xml_set_default_handler() configura o manipulador de dados padrão para o analisador XML.

Essa função define a função chamada sempre que o analisador encontrar dados em um arquivo XML.

Se o processador for configurado com sucesso, essa função retornará true; caso contrário, retornará false.

Sintaxe

xml_set_default_handler(parser,handler)
Parâmetros Descrição
parser Obrigatório. Define o analisador XML a ser usado.
handler Obrigatório. Define a função usada como manipulador de eventos.

por handler A função definida pelos parâmetros deve ter três parâmetros:

Parâmetros Descrição
parser Obrigatório. Define uma variável que contém o analisador XML chamado pelo processador.
data Obrigatório. Define a variável que contém os dados.

Descrição

handler Os parâmetros também podem ser um array que contém referências a objetos e nomes de métodos.

Exemplo

Arquivo XML:

<?xml version="1.0" encoding="ISO-8859-1"?>
<note>
<to>George</to>
<from>John</from>
<heading>Lembrete</heading>
<body>¡Não se esqueça da reunião!</body>
</note>

Código PHP:

<?php
$parser=xml_parser_create();
função default($parser,$data)
  {
  echo $data;
  }
xml_set_default_handler($parser,"default");
$fp=fopen("test.xml","r");
while ($data=fread($fp,4096))
  {
  xml_parse($parser,$data,feof($fp)) or 
  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);
?>

Saída:

George John Lembrete ¡Não se esqueça da reunião!

Se você visualizar o código-fonte no navegador, verá o seguinte HTML:

<note>
<to>George</to>
<from>John</from>
<heading>Lembrete</heading>
<body>¡Não se esqueça da reunião!</body>
</note>