Функция PHP xml_set_default_handler()

Определение и использование

Функция xml_set_default_handler() устанавливает default обработчик данных для XML-парсера.

Эта функция определяет функцию, которая будет вызываться, когда парсер находит данные в XML-файле.

Если обработчик успешно установлен, функция вернет true; в противном случае вернет false.

Синтаксис

xml_set_default_handler(parser,handler)
Параметр Описание
parser Обязателен. Определяет XML-парсер, который будет использоваться.
handler Обязателен. Определяет функцию, используемую в качестве обработчика событий.

От handler Функция,规定的参数必须有三个 параметра:

Параметр Описание
parser Обязателен. Определяет переменную, содержащую XML-парсер, вызываемый обработчиком.
data Обязателен. Определяет переменную, содержащую данные.

Описание

handler Параметр также может быть массивом, содержащим ссылки на объекты и имена методов.

Пример

Файл XML:

<?xml version="1.0" encoding="ISO-8859-1"?>
<note>
<to>George</to>
<from>John</from>
<heading>Памятка</heading>
<body>Не забудьте встречу!</body>
</note>

PHP код:

<?php
$parser=xml_parser_create();
функция 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("Ошибка XML: %s на строке %d", 
  xml_error_string(xml_get_error_code($parser)),
  xml_get_current_line_number($parser)));
  }
xml_parser_free($parser);
?>

Вывод:

George John Памятка Не забудьте встречу!

Если вы посмотрите на исходный код в браузере, вы увидите следующий HTML:

<note>
<to>George</to>
<from>John</from>
<heading>Памятка</heading>
<body>Не забудьте встречу!</body>
</note>