PHP Handbuch
Zurück |  | Nach vorne

# xml_set_external_entity_ref_handler

(PHP 3>= 3.0.6, PHP 4 )

xml_set_external_entity_ref_handler -- set up external entity reference handler

## Description

bool xml_set_external_entity_ref_handler ( resource parser, string handler)

Sets the external entity reference handler function for the XML parser `parser`. `handler` is a string containing the name of a function that must exist when xml_parse() is called for `parser`.

The function named by `handler` must accept five parameters, and should return an integer value. If the value returned from the handler is `FALSE` (which it will be if no value is returned), the XML parser will stop parsing and xml_get_error_code() will return XML_ERROR_EXTERNAL_ENTITY_HANDLING. `handler` ( resource parser, string open_entity_names, string base, string system_id, string public_id)

`parser`

  The first parameter, `parser`, is a reference to the XML parser calling the handler.

`open_entity_names`

  The second parameter, `open_entity_names`, is a space-separated list of the names of the entities that are open for the parse of this entity (including the name of the referenced entity).

`base`

  This is the base for resolving the system identifier (`system_id`) of the external entity. Currently this parameter will always be set to an empty string.

`system_id`

  The fourth parameter, `system_id`, is the system identifier as specified in the entity declaration.

`public_id`

  The fifth parameter, `public_id`, is the public identifier as specified in the entity declaration, or an empty string if none was specified; the whitespace in the public identifier will have been normalized as required by the XML spec.

If a handler function is set to an empty string, or `FALSE`, the handler in question is disabled.

`TRUE` is returned if the handler is set up, `FALSE` if `parser` is not a parser.

> Anmerkung: Anstelle eines Funktionsnamens kann auch ein Array mit einer Objekt-Referenz und dem Namen einer Methode angegeben werden.

Zurück | Zum Anfang | Nach vorne
xml_set_end_namespace_decl_handler | Nach oben | xml_set_notation_decl_handler