xml_set_external_entity_ref_handler
Установка обработчика внешних сущностей
&reftitle.description;
truexml_set_external_entity_ref_handler
XMLParserparser
callablehandler
Задаёт функцию обработчик внешних сущностей для XML-анализатора
parser.
&reftitle.parameters;
&xml.parser.param;
handler
&xml.handler.description;
Сигнатура обработчика должна быть:
boolhandler
XMLParserparser
stringopen_entity_names
stringfalsebase
stringsystem_id
stringfalsepublic_id
&xml.handler.parser.param;
open_entity_names
Список разделённых пробелами имён сущностей, которые могут участвовать
в разборе текущей сущности (включая текущую сущность).
base
Это основа для разрешения системного идентификатора
(system_id) внешней сущности.
system_id
Системный идентификатор в том виде, как он представлен в объявлении сущности.
public_id
Общедоступный идентификатор в том виде, как он представлен в объявлении сущности,
либо пустая строка, если такового нет; пробелы в идентификаторе
будут нормализованы в соответствии с требованиями XML-спецификации.
Обработчик должен вернуть &true;, если сущность была обработана,
в противном случае он должен вернуть &false;.
При возврате значения &false;, XML-парсер прекращает разбор,
а функция xml_get_error_code возвращает
константу XML_ERROR_EXTERNAL_ENTITY_HANDLING.
&reftitle.returnvalues;
&return.true.always;
&reftitle.changelog;
&Version;
&Description;
&xml.changelog.parser-param;
7.3.0
Возвращаемое значение handler больше не
игнорируется, если модуль был собран с библиотекой libxml.
Раньше возвращаемое значение игнорировалось, а разбор
никогда не останавливался.