欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php使用函数方式读取XML文件的例子

程序员文章站 2022-06-10 18:09:55
...
";
  • 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);
  • ?>
  • 复制代码
    1. //第一步 创建解析器 xml_parser_create(编码);

    2. $xml = xml_parser_create('utf-8');
    3. //xml_parser_set_option — 为指定 XML 解析进行选项设置
    4. //xml_parser_set_option($xml,XML_OPTION_CASE_FOLDING,false); false原样输出
    5. //注册事件,将遇到开始和结束表计时使用什么函数
    6. xml_set_element_handler($xml,"starttag","endtag");
    7. xml_set_character_data_handler($xml,"content");

    8. function starttag($x,$tagName,$args){

    9. if($tagName=="USERS")
    10. echo "";
    11. echo "
    12. ";
    13. }else
    14. echo "
    15. {$tagName}";
    16. else if($tagName == "USER"){
    17. echo "
    18. {$args['ID']} ";
    19. }
    20. function endtag($x,$tagName){

    21. if($tagName=="USERS")
    22. echo "
    23. ";
    24. else if($tagName == "USER")
    25. echo "