PHP 8.4.2 Released!

xml_set_unparsed_entity_decl_handler

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

xml_set_unparsed_entity_decl_handlerAffecte les gestionnaires d'entités non déclarées

Description

xml_set_unparsed_entity_decl_handler(XMLParser $parser, callable|string|null $handler): true

Affecte les gestionnaires d'entités non déclarées de l'analyseur XML parser.

Le gestionnaire parser sera appelé si l'analyseur XML rencontre une déclaration d'entité externe avec une déclaration de NDATA, comme suit :

<!ENTITY <parameter>name</parameter> {<parameter>publicId</parameter> | <parameter>systemId</parameter>}
        NDATA <parameter>notationName</parameter>

Reportez-vous à la section » des spécifications XML 1.0 pour connaître les notations des entités externes.

Liste de paramètres

parser

Le parseur XML.

handler

Si null est passé, le gestionnaire est réinitialisé à son état par défaut.

Avertissement

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().

Avertissement

Cette fonctionnalité est dépréciée à partir de PHP 8.4.0.

Avertissement

À 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 :

handler(
    XMLParser $parser,
    string $entity_name,
    string|false $base,
    string $system_id,
    string|false $public_id,
    string|false $notation_name
): void
parser
Le parseur XML appelant le gestionnaire.
entity_name
Le nom de l'entité qui va être définie.
base
La racine pour la résolution de l'identifiant système (system_id) de l'entité externe.
system_id
Identifiant système pour cette entité externe.
public_id
Identifiant public pour cette entité externe.
notation_name
Nom de la notation de cette entité. (Voir xml_set_notation_decl_handler()).

Valeurs de retour

Retourne toujours true.

Historique

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.
add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top