When I try to use this class I get an error saying
Warning: xml_parse() [function.xml-parse]: Unable to call handler startElement() in readxml.php on line 15
Warning: xml_parse() [function.xml-parse]: Unable to call handler characterData() in readxml.php on line 15
$file comes out fine so I can't figure out why this error comes out. can anyone help please?
<?
class readxml {
function readxml($file) {
$xml_parser = xml_parser_create();
xml_set_element_handler($xml_parser, "startElement", "endElement");
xml_set_character_data_handler ($xml_parser, "characterData");
echo $file;
$fp = fopen($file,"r")
or die("Error reading file ". $file .".xml");
while ($data = fread($fp, 4096)) {
xml_parse($xml_parser, $data, feof($fp))
or die(sprintf("XML error: %s at line %d",
xml_error_string(xml_get_error_code($xml_parser)),
xml_get_current_line_number($xml_parser)));
}
fclose($fp);
xml_parser_free($xml_parser);
}
function startElement($parser, $name, $attrs) {
global $depth;
global $current_tag;
$current_tag = $name;
$depth[$parser]++;
}
function endElement($parser, $name) {
global $depth, $current_tag;
$current_tag = "";
$depth[$parser]--;
}
function characterData($parser, $chardata) {
global $current_tag;
}
}
?>