(PHP 4, PHP 5, PHP 7, PHP 8)
xml_set_object — Use XML Parser within an object
Diese Funktion ist seit PHP 8.4.0 als DEPRECATED (veraltet) markiert. Von der Verwendung dieser Funktion wird dringend abgeraten.
This function allows to use parser
inside
object
. All callback functions could be set with
xml_set_element_handler() etc and assumed to be
methods of object
.
parser
A reference to the XML parser to use inside the object.
object
The object where to use the XML parser.
Gibt immer true
zurück.
Version | Beschreibung |
---|---|
8.4.0 | This function is now deprecated, instead pass proper callable values to xml_set_() |
8.0.0 |
parser erwartet nun eine
XMLParser-Instanz; vorher wurde eine gültige
xml -Ressource erwartet.
|
Beispiel #1 xml_set_object() example
<?php
class CustomXMLParser
{
private $parser;
function __construct()
{
$this->parser = xml_parser_create();
xml_set_object($this->parser, $this);
xml_set_element_handler($this->parser, "tag_open", "tag_close");
xml_set_character_data_handler($this->parser, "cdata");
}
function parse($data)
{
xml_parse($this->parser, $data);
}
function tag_open($parser, $tag, $attributes)
{
var_dump($tag, $attributes);
}
function cdata($parser, $cdata)
{
var_dump($cdata);
}
function tag_close($parser, $tag)
{
var_dump($tag);
}
}
$xml_parser = new CustomXMLParser();
$xml_parser->parse("<A ID='hallo'>PHP</A>");
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
string(1) "A" array(1) { ["ID"]=> string(5) "hallo" } string(3) "PHP" string(1) "A"