(PHP 4, PHP 5, PHP 7, PHP 8)
xml_set_element_handler — Affecte les gestionnaires de début et de fin de balise XML
$parser, callable|string|null $start_handler, callable|string|null $end_handler): true
Affecte les gestionnaires de début et de fin de l'analyseur XML
parser.
start_handler est appelé quand un nouvel élément XML
est ouvert. end_handler est appelé quand un élément
XML est fermé.
parserLe parseur XML.
start_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 :
parserLe parseur XML appelant le gestionnaire.
nameContient le nom de l'élément qui a provoqué l'appel du gestionnaire. Si l'analyseur gère la casse, cet élément sera en majuscules.
attributesUn tableau associatif avec les attributs de l'élément. Le tableau est vide s'il n'y a pas d'attributs. Les clés de ce tableau seront les noms des attributs, et les valeurs seront les valeurs correspondantes des attributs. Les noms des attributs seront mis en majuscules si l'analyseur gère la casse. Les valeurs des attributs seront inchangées.
L'ordre dans lequel attributes est traversé
est identique à l'ordre dans lequel les attributs ont été déclarés.
end_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 :
parserLe parseur XML appelant le gestionnaire.
nameContient le nom de l'élément qui a provoqué l'appel du gestionnaire. Si l'analyseur gère la casse, cet élément sera en majuscules.
Retourne toujours true.
| Version | Description |
|---|---|
| 8.4.0 |
Passer une string non-callable à
handler est désormais obsolète,
utiliser un callable adéquat pour les méthodes, ou null pour réinitialiser le gestionnaire.
|
| 8.4.0 |
La validité de handler en tant que callable
est désormais vérifiée lors de la définition du gestionnaire au lieu d'être vérifiée lors de son appel.
|
| 8.0.0 |
parser attend une instance de XMLParser
désormais; auparavent, une resource xml était attendue.
|