libxml_set_external_entity_loader
Изменение загрузчика по умолчанию для внешних объектов
&reftitle.description;
boollibxml_set_external_entity_loader
callablenullresolver_function
Изменение загрузчика по умолчанию для внешних объектов.
&reftitle.parameters;
resolver_function
Функция обратного вызова (callable), принимающая три аргумента.
Две строки, публичный и системный идентификаторы и контекст (массив с четырьмя ключами).
Эта функция должна возвращать ресурс, строку, из которой этот ресурс можно открыть,
или &null;.
&reftitle.returnvalues;
&return.success;
&reftitle.examples;
Пример использования libxml_set_external_entity_loader
bar
XML;
$dtd = <<
DTD;
libxml_set_external_entity_loader(
function ($public, $system, $context) use($dtd) {
var_dump($public);
var_dump($system);
var_dump($context);
$f = fopen("php://temp", "r+");
fwrite($f, $dtd);
rewind($f);
return $f;
}
);
$dd = new DOMDocument;
$r = $dd->loadXML($xml);
var_dump($dd->validate());
?>
]]>
&example.outputs;
NULL
["intSubName"] => NULL
["extSubURI"] => NULL
["extSubSystem"] => NULL
}
bool(true)
]]>
&reftitle.seealso;
libxml_disable_entity_loader