该典范用缩进格局显示一个文档中起始元素的结构。
显示 XML 元素结构
$file = 'data.xml';
$depth = array();
function startElement($parser, $name, $attrs) {
global $depth;
for ($i = 0; $i <$depth[$parser]; $i ) {
print ' ';
}
print '$name\n';
$depth[$parser] ;
}
function endElement($parser, $name) {
global $depth;
$depth[$parser]--;
}
$xml_parser = xml_parser_create();
xml_set_element_handler($xml_parser, 'startElement', 'endElement');
if (!($fp = fopen($file, 'r'))) {
die('could not open XML input');
}
while ($data = fread($fp, 4096)) {
if (!xml_parse($xml_parser, $data, feof($fp))) {
die(sprintf('XML error: %s at line %d',
xml_error_string(xml_get_error_code($xml_parser)),
xml_get_current_line_number($xml_parser)));
}
}
xml_parser_free($xml_parser);
?>