(PHP 4, PHP 5, PHP 7, PHP 8)
xml_set_notation_decl_handler — Set up notation declaration handler
Sets the notation declaration handler function for the XML parser
parser
.
A notation declaration is part of the document's DTD and has the following format:
<!NOTATION <parameter>name</parameter> { <parameter>systemId</parameter> | <parameter>publicId</parameter>?>
parser
Der XML-Parser
handler
Wenn null
übergeben wird, wird der Handler auf seinen Standardzustand
zurückgesetzt.
Eine leere Zeichenkette setzt den Handler ebenfalls zurück, allerdings ist dies seit PHP 8.4.0 veraltet.
Wenn handler
vom Typ callable ist, wird
das Callable als Handler gesetzt.
Wenn handler
vom Typ string ist, kann es
der Name der Methode eines Objekts sein, das mit
xml_set_object() gesetzt wurde.
Dies ist seit PHP 8.4.0 veraltet.
Seit PHP 8.4.0 wird die Gültigkeit des Callables bereits beim Setzen des Handlers geprüft, nicht erst beim Aufruf. Das bedeutet, dass xml_set_object() aufgerufen werden muss, bevor eine Methoden-Zeichenkette als Callback gesetzt wird. Da aber auch dieses Verhalten seit PHP 8.4.0 veraltet ist, wird stattdessen empfohlen, ein korrektes Callable für die Methode zu verwenden.
The signature of the handler must be:
$parser
,$notation_name
,$base
,$system_id
,$public_id
parser
notation_name
base
system_id
) of the notation declaration.
system_id
public_id
Gibt immer true
zurück.
Version | Beschreibung |
---|---|
8.4.0 |
Die Übergabe einer Zeichenkette an handler , die kein
Callable ist, ist nun veraltet. Daher sollte für Methoden ein
korrektes Callable verwendet werden, oder null , um den Handler zurückzusetzen.
|
8.4.0 |
Die Gültigkeit von handler als Callable
wird nun bereits beim Setzen des Handlers geprüft und nicht erst beim Aufruf.
|
8.0.0 |
parser erwartet nun eine
XMLParser-Instanz; vorher wurde eine gültige
xml -Ressource erwartet.
|