PHP Manual
Prev |  | Next

# xml_set_object

xml_set_object -- Use XML Parser withing an object

## Description

`void xml_set_object`(int parser, object &object);

This function makes `parser` useable from within `object`. All callback functions settet via xml_set_element_handler() etc are assumed to be methods of `object`.

    <?php
    class xml  {
    var $parser;

    function xml() {
        $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($parser,$tag,$attributes);
    }

    function cdata($parser,$cdata) {
        var_dump($parser,$cdata);
    }

    function tag_close($parser,$tag) {
        var_dump($parser,$tag);
    }

    } // end of class xml

    $xml_parser = new xml();
    $xml_parser->parse("<A ID=\"hallo\">PHP</A>");
    ?>

> Note: xml_set_object() handling was added in PHP 4.0.

Prev | Home | Next
xml_parser_create | Up | xml_set_element_handler