php使用函数方式读取XML文件的例子
Freigeben: 2016-07-25 09:10:30
Original
904 Leute haben es durchsucht
-
-
//第一步 创建解析器 xml_parser_create(编码);
- $xml = xml_parser_create('utf-8');
- //xml_parser_set_option — 为指定 XML 解析进行选项设置
- //xml_parser_set_option($xml,XML_OPTION_CASE_FOLDING,false); false原样输出
- //注册事件,将遇到开始和结束表计时使用什么函数
- xml_set_element_handler($xml,"starttag","endtag");
xml_set_character_data_handler($xml,"content");
function starttag($x,$tagName,$args){
- if($tagName=="USERS")
- echo "
{$tagName}";- else if($tagName == "USER"){
- echo "
";- echo "
{$args['ID']} | ";
- }else
- echo "
";- }
function endtag($x,$tagName){
- if($tagName=="USERS")
- echo "
|
";
- else if($tagName == "USER")
- echo "
|
"; else
echo "";
}
function content($x,$content){
echo $content;
}
$printerror=false;
$xmlfile="user.xml";
//第二步 读取数据
$fp=fopen($xmlfile,"r");
while(!feof($fp)){
$data=fread($fp,1024);
//开始解析
if(!xml_parse($xml,$data)){
$printerror=true;
}
}
//关闭文件
fclose($fp);
if($printerror){
$row=xml_get_current_line_number($xml);
$col=xml_get_current_column_number($xml);
$errormess=xml_error_string(xml_get_error_code($xml));
echo "在文件{$xmlfile}中,[{$row}行,{$col}列]:{$errormess}.";
}
//关闭解析器
xml_parser_free($xml);
?>
复制代码
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
-
2024-10-22 09:46:29
-
2024-10-13 13:53:41
-
2024-10-12 12:15:51
-
2024-10-11 22:47:31
-
2024-10-11 19:36:51
-
2024-10-11 15:50:41
-
2024-10-11 15:07:41
-
2024-10-11 14:21:21
-
2024-10-11 12:59:11
-
2024-10-11 12:17:31