(PHP 4, PHP 5, PHP 7, PHP 8)
xml_parse — 开始解析 XML 文档
xml_parse() 解析 XML 文档。已配置事件的处理程序根据需要被无限次调用。
成功时返回 1,失败时返回 0。
若解析失败,可以使用如下函数获取错误信息:xml_get_error_code()、xml_error_string()、xml_get_current_line_number()、xml_get_current_column_number() 和 xml_get_current_byte_index()。
注意:
将
is_final
参数设置为true
,一些错误(例如 entity 错误)将会在数据末尾报告。
示例 #1 分块解析大型 XML 文档
此示例展示了如何以块的形式读取和解析大型 XML 文档,这样就不必将整个文档保存在内存中。为简洁起见,省略了错误处理。
<?php
$stream = fopen('large.xml', 'r');
$parser = xml_parser_create();
// set up the handlers here
while (($data = fread($stream, 16384))) {
xml_parse($parser, $data); // parse the current chunk
}
xml_parse($parser, '', true); // finalize parsing
xml_parser_free($parser);
fclose($stream);