xml_set_object

(PHP 4, PHP 5)

xml_set_object -- オブジェクト内部で XML パーサを使用する

説明

bool xml_set_object ( resource parser, object &object )

この関数は、object の内部から parser を使用可能にします。 xml_set_element_handler() 等により設定される 全てのコールバック関数は、object のメソッドであると仮定されます。

例 1. xml_set_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);
    }

}
// class xml ここまで

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