xml_set_external_entity_ref_handler

(PHP 4, PHP 5, PHP 7, PHP 8)

xml_set_external_entity_ref_handler - Встановлення обробника зовнішніх сутностей

Опис

xml_set_external_entity_ref_handler(XMLParser $parser, callable $handler): true

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

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

parser

Парсер XML.

handler

Якщо передається значення null або порожній рядок, обробник повертається в стан за замовчуванням.

Якщо параметр handler є типом callable, то як оброблювач встановлюється callable.

Якщо параметр handler є рядком (string), це може бути ім'я методу об'єкта, заданого за допомогою функції xml_set_object()

Сигнатура оброблювача має бути:

handler(    XMLParser $parser,    string $open_entity_names,    string|false $base,    string $system_id,    string|false $public_id): bool

parser

XML-парсер, що викликає оброблювач.

open_entity_names

Список розділених пробілами імен сутностей, які можуть брати участь у аналізі поточної сутності (включаючи поточну сутність).

base

Це основа для дозволу системного ідентифікатора (system_id) Зовнішньої сутності.

system_id

Системний ідентифікатор у вигляді, як він представлений в оголошенні сутності.

public_id

Загальнодоступний ідентифікатор у вигляді, як і представлений у оголошенні сутності, чи порожній рядок, якщо такого немає; пробіли в ідентифікаторі будуть нормалізовані відповідно до вимог специфікації XML.

Обработчик должен вернуть**true**якщо сутність була оброблена, інакше він повинен повернути falseПри возврате значенияfalse, XML-парсер прекращает разбор, а функцияxml_get_error_code() повертає константу XML_ERROR_EXTERNAL_ENTITY_HANDLING

Значення, що повертаються

Функція завжди повертає true

список змін

ВерсияОпис
8.0.0Параметрparser чекає на екземпляр XMLParser; раніше очікувався коректний xml ресурс (Resource).
7.3.0Возвращаемое значениеhandler більше не ігнорується, якщо модуль був зібраний із бібліотекою libxml. Раніше значення, що поверталося, ігнорувалося, а розбір ніколи не зупинявся.