(PHP 4, PHP 5, PHP 7, PHP 8)
xml_set_processing_instruction_handler — Affecte les gestionnaires d'instructions de traitement
Affecte le gestionnaire d'instructions exécutables de l'analyseur
XML parser
.
Une instruction de traitement a la forme suivante :
<?target data ?>
Le code PHP code est délimité par l'instruction de traitement
<?php
.
Ainsi, il est possible d'avoir du code PHP dans un document XML.
Cependant, la balise de fin de l'instruction de traitement
(?>
) ne doit pas faire partie des données.
Si une balise de fin de l'instruction de traitement existe dans le code
PHP imbriqué, le reste du code PHP et la "vrai" balise de fin de
l'instruction de traitement, seront traité comme des données de texte.
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
target
data
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.
|