xml_set_external_entity_ref_handler
(PHP 4, PHP 5, PHP 7)
xml_set_external_entity_ref_handler — Установка обработчика внешних сущностей
Описание
Задает функцию обработчик внешних сущностей для XML-анализатора
parser
.
Список параметров
-
parser
-
Ссылка на XML-анализатор.
-
handler
-
handler
- строка содержащая имя функции, которая должна быть определена на момент вызова функции xml_parse() из анализатораparser
.Функция с именем
handler
должна принимать пять аргументов и возвращать целочисленный результат. Если обработчик вернетfalse
(равно как и ничего не вернет), XML анализатор прекратит работу, а функция xml_get_error_code() будет возвращать константуXML_ERROR_EXTERNAL_ENTITY_HANDLING
.handler ( XMLParser$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
в случае возникновения ошибки.
Список изменений
Версия | Описание |
---|---|
8.0.0 |
Параметр parser ожидает экземпляр XMLParser; ранее ожидался ресурс (resource).
|
7.3.0 |
Возвращаемое значение handler больше не
игнорируется, если модуль был собран с библиотекой libxml.
Раньше возвращаемое значение игнорировалось, а разбор
никогда не останавливался.
|