(PHP 4, PHP 5, PHP 7)
xml_set_object — Use XML Parser within an object
$parser
, object $object
) : bool
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.
Retorna true
em caso de sucesso ou false
em caso de falha.
Versão | Descrição |
---|---|
8.0.0 |
parser expects an XMLParser
instance now; previously, a resource was expected.
|
Exemplo #1 xml_set_object() example
<?php
class XMLParser
{
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 __destruct()
{
xml_parser_free($this->parser);
unset($this->parser);
}
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 XMLParser();
$xml_parser->parse("<A ID='hallo'>PHP</A>");
?>
O exemplo acima irá imprimir:
string(1) "A" array(1) { ["ID"]=> string(5) "hallo" } string(3) "PHP" string(1) "A"