PHP xml_set_object() Function

Description

The xml_set_object() function allows a parser to be used within an object.

Syntax

PHP xml_set_object() Function has the following syntax.

xml_set_object(parser,object)

Parameter

ParameterIs RequiredDescription
parserRequired.XML parser to use
objectRequired.Object to set the parser to

Return

This function returns TRUE on success, or FALSE on failure.

Example

XML File


<?xml version="1.0" encoding="ISO-8859-1"?>
<Book>/*  ww  w.j  a v a2 s  .co m*/
    <name>PHP</name>
    <name>Java</name>
</Book>

Use Parser as an object


<?php/*  w  w w  .  j  a v  a 2 s  . co  m*/
class XMLParser{
    var $xmlparser;
    
    function XMLParser(){
      $this->xmlparser = xml_parser_create();
      xml_set_object($this->xmlparser, $this);
      xml_set_character_data_handler($this->xmlparser,"char");
      xml_set_element_handler($this->xmlparser, "start_tag","end_tag");
    }
    
    function parse($data){
      xml_parse($this->xmlparser, $data);
    }
    
    function parse_File($xmlfile){
      $fp = fopen($xmlfile, 'r');
      while ($xmldata = fread($fp, 4096)){
        if(!xml_parse($this->xmlparser, $xmldata)){
          print "ERROR: ";
          print xml_error_string(xml_get_error_code($this->xmlparser));
          print "Line: ";
          print xml_get_current_line_number($this->xmlparser);
          print "Column: ";
          print xml_get_current_column_number($this->xmlparser);
        }
      }
    }
    
    function start_tag($xmlparser, $tag, $attributes){
      print $tag . "\n";
    }

    function end_tag(){}
    
    function char($xmlparser,$data){
      echo $data . "\n";
    }

    function close_Parser(){
      xml_parser_free($this->xmlparser);
    }
}

$myxmlparser = new XMLParser();
$myxmlparser->parse_File("test.xml");
$myxmlparser->close_parser();
?>




















Home »
  PHP Tutorial »
    Function reference »




PHP Array Functions
PHP Calendar Functions
PHP Class Functions
PHP Data Type Functions
PHP Date Functions
PHP File Functions
PHP Image Functions
PHP Math Functions
PHP MySQLi Functions
PHP SimpleXML Functions
PHP String Functions
PHP XML Functions
PHP Zip Functions