(PHP 4, PHP 5, PHP 7, PHP 8)
xml_set_external_entity_ref_handler — Configure le gestionnaire XML de références externes
Affecte le gestionnaire d'entité externe de l'analyseur XML
parser
.
parser
Le parseur XML.
handler
Si null
est passé, le gestionnaire est réinitialisé à son état par défaut.
Une chaîne vide réinitialisera également le gestionnaire, cependant cette fonctionnalité est dépréciée à partir de PHP 8.4.0.
Si handler
est un callable,
l'appelable est défini comme le gestionnaire.
Si handler
est une string,
il peut s'agir du nom d'une méthode d'un objet défini avec
xml_set_object().
Cette fonctionnalité est dépréciée à partir de PHP 8.4.0.
À partir de PHP 8.4.0, la validité du callable est vérifiée lors de la configuration du gestionnaire, et non au moment de son appel. Cela signifie que xml_set_object() doit être appelé avant de définir une méthode sous forme de chaîne comme rappel. Cependant, comme ce comportement est également déprécié à partir de PHP 8.4.0, il est recommandé d'utiliser un callable approprié pour la méthode.
La signature du gestionnaire doit être :
$parser
,$open_entity_names
,$base
,$system_id
,$public_id
parser
open_entity_names
base
system_id
) de l'entité externe.
system_id
public_id
Le gestionnaire devrait retourner true
si l'entité a été géré,
sinon false
.
Quand false
est retourné l'analyseur XML arrêtera l'analyse et
xml_get_error_code() retournera
XML_ERROR_EXTERNAL_ENTITY_HANDLING
.
Retourne toujours true
.
Version | Description |
---|---|
8.4.0 |
Passing a non-callable string to
handler is now deprecated,
use a proper callable for methods, or null to reset the handler.
|
8.4.0 |
The validity of handler as a callable
is now checked when setting the handler instead of checking when calling it.
|
8.0.0 |
parser attend une instance de XMLParser
désormais; auparavent, une resource xml était attendue.
|
7.3.0 |
La valeur de retour de handler n'est désormais
plus ignoré quand l'extension a été compilé contre libxml. Auparavant,
la valeur de retour était ignoré et l'analyse ne s'arrêtait jamais.
|