xml_set_external_entity_ref_handler

(PHP 4, PHP 5)

xml_set_external_entity_ref_handler Установка обработчика внешних сущностей

Описание

bool xml_set_external_entity_ref_handler ( resource $parser , callback $handler )

Задает функцию обработчик внешних сущностей для XML анализатора parser.

Список параметров

parser

Ссылка на XML анализатор.

handler

handler - строка содержащая имя функции, которая должна быть определена на момент вызова функции xml_parse() из анализатора parser.

Функция с именем handler должна принимать пять аргументов и возвращать целочисленный результат. Если обработчик вернет FALSE (равно как и ничего не вернет), XML анализатор прекратит работу, а функция xml_get_error_code() будет возвращать константу XML_ERROR_EXTERNAL_ENTITY_HANDLING.

handler ( resource $parser , string $open_entity_names , string $base , string $system_id , string $public_id )
parser
Первый аргумент parser является ссылкой на XML анализатор вызывающий обработчик.
open_entity_names
Второй аргумент open_entity_names - список разделенных пробелами имен сущностей, которые могут участвовать в разборе текущей сущности (включая текущую сущность).
base
Это основа для разрешения системного идентификатора (system_id) внешней сущности. На данный момент в качестве этого аргумента всегда передается пустая строка.
system_id
Четвертый аргумент system_id - системный идентификатор в том виде, как он представлен в объявлении сущности.
public_id
Пятый аргумент public_id - общедоступный идентификатор в том виде, как он представлен в объявлении сущности, либо пустая строка, если такового нет; пробелы в идентификаторе будут нормализованы в соответствии с требованиями XML спецификации.

Если в качестве обработчика передана пустая строка или FALSE, этот обработчик отключается.

Замечание: В качестве аргумента вместо имени функции может быть передан массив, содержащий ссылку на объект и имя метода.

Возвращаемые значения

Возвращает TRUE в случае успешного завершения или FALSE в случае возникновения ошибки.


Участник рейтинга Тэглайн 2010