xml_set_object

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

説明

void xml_set_object(int parser, object &object);

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

  1 
  2  <?php
  3  class xml  {
  4  var $parser;
  5  
  6  function xml() {
  7      $this->parser = xml_parser_create();
  8      xml_set_object($this->parser,&$this);
  9      xml_set_element_handler($this->parser,"tag_open","tag_close");
 10      xml_set_character_data_handler($this->parser,"cdata");
 11  }
 12  
 13  function parse($data) { 
 14      xml_parse($this->parser,$data);
 15  }
 16  
 17  function tag_open($parser,$tag,$attributes) { 
 18      var_dump($parser,$tag,$attributes); 
 19  }
 20  
 21  function cdata($parser,$cdata) { 
 22      var_dump($parser,$cdata);
 23  }
 24  
 25  function tag_close($parser,$tag) { 
 26      var_dump($parser,$tag); 
 27  }
 28  
 29  } // クラス xmlの終わり
 30  
 31  $xml_parser = new xml();
 32  $xml_parser->parse("<A ID=\"hallo\">PHP</A>");
 33  ?>
 34     

注意: xml_set_object() 処理は、PHP 4.0 で追加されました。