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

WBOY
Freigeben: 2016-07-25 09:10:30
Original
904 Leute haben es durchsucht
";
  • 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 "


    Quelle:php.cn
    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
    Beliebte Tutorials
    Mehr>
    Neueste Downloads
    Mehr>
    Web-Effekte
    Quellcode der Website
    Website-Materialien
    Frontend-Vorlage