一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

php的XML文件解釋類應(yīng)用實例

本文實例講述了php的XML文件解釋類及其用法,是非常實用的技巧。分享給大家供大家參考。具體如下:

XMLParser.class.php類文件如下:

<?php /** XML 文件分析類 *  Date:  2013-02-01 *  Author: fdipzone *  Ver:  1.0 * *  func: *  loadXmlFile($xmlfile)   讀入xml文件輸出Array *  loadXmlString($xmlstring) 讀入xmlstring 輸出Array */  class XMLParser{    /** 讀取xml文件   * @param String $xmlfile   * @return Array   */   public function loadXmlFile($xmlfile){     // get xmlfile content     $xmlstring = file_exists($xmlfile)? file_get_contents($xmlfile) : '';     // parser xml     list($flag, $data) = $this->parser($xmlstring);     return $this->response($flag, $data);   }    /** 讀取xmlstring   * @param String $xmlstring   * @return Array   */   public function loadXmlString($xmlstring){     // parser xml     list($flag, $data) = $this->parser($xmlstring);     return $this->response($flag, $data);   }    /** 解釋xml內(nèi)容   * @param  String $xmlstring   * @return Array   */   private function parser($xmlstring){     $flag = false;     $data = array();     // check xml format     if($this->checkXmlFormat($xmlstring)){       $flag = true;       // xml to object       $data = simpleXML_load_string($xmlstring, 'SimpleXMLElement', LIBXML_NOCDATA);       // object to array       $this->objectToArray($data);     }     return array($flag, $data);   }    /** 檢查xml格式是否正確   * @param String $xmlstring   * @return boolean   */   private function checkXmlFormat($xmlstring){     if($xmlstring==''){       return false;     }     $xml_parser_obj = xml_parser_create();      if(xml_parse_into_struct($xml_parser_obj, $xmlstring, $vals, $indexs)===1){ // 1:success 0:fail       return true;     }else{       return false;     }   }    /** object 轉(zhuǎn) Array   * @param object $object   * @return Array   */   private function objectToArray(&$object){          $object = (array)$object;          foreach($object as $key => $value){       if($value==''){         $object[$key] = "";       }else{         if(is_object($value) || is_array($value)){           $this->objectToArray($value);           $object[$key] = $value;         }       }     }   }    /** 輸出返回   * @param boolean $flag true:false   * @param Array  $data 轉(zhuǎn)換后的數(shù)據(jù)   * @return Array   */   private function response($flag=false, $data=array()){     return array($flag, $data);   } } ?>

Demo示例程序如下:

<?php require "XMLParser.class.php";  $xmlfile = 'file.xml'; $xmlstring = '<?xml version="1.0" encoding="utf-8"?> <xmlroot> <status>1000</status> <info></info> <result><id>100</id> <name>fdipzone</name> <gender>1</gender> <age>28</age> </result> </xmlroot>'; echo '<pre>'; $xml_parser = new XMLParser(); echo "response xmlfile/r/n"; list($flag, $xmldata) = $xml_parser->loadXmlFile($xmlfile); if($flag){   print_r($xmldata); } echo "response xmlstring/r/n"; list($flag, $xmldata) = $xml_parser->loadXmlString($xmlstring); if($flag){   print_r($xmldata); } echo '</pre>'; ?> 

關(guān)于php的XML預(yù)定義常量可參考官方文檔:
http://www.php.NET/manual/en/libxml.constants.php

希望本文所述對大家php程序設(shè)計的學(xué)習(xí)有所幫助。

php技術(shù)php的XML文件解釋類應(yīng)用實例,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 久久窝窝国产精品午夜看15 | 国产精品一区二区国产 | 午夜视频www| 美国一级做a爰片性色毛片 美国一区二区三区 | 激情视频激情小说激情图片 | 国产成人短视频 | 综合图片亚洲网友自拍10p | 精品精拍国产日韩26u | 精品国产免费观看一区 | 久久这里一区二区精品 | 国产精品原创巨作av | 美女视频黄视大全视频免费的 | 国产精品分类视频分类一区 | 久久精品亚洲精品国产色婷 | 国产日韩精品欧美一区喷 | 成人免费草草视频 | 精品麻豆视频 | 国产高清国产专区国产精品 | 久久久久一 | 日韩美女一级视频 | 久久香蕉精品成人 | 国产亚洲精品2021自在线 | 91亚洲国产| 亚洲国产成人综合精品2020 | 四虎国产精品免费视 | 激情小说激情图片激情视频 | 久久久久国产免费 | 99久久精品国产麻豆 | 99久久精品国产亚洲 | 免费高清小黄站在线观看 | 日本久久网站 | 五月激情片 | 日韩在线视频中文字幕 | 中文字幕区| 欧亚激情偷乱人伦小说视频 | 国产高清一区二区三区四区 | 美女张开腿给人网站 | 国产一区二区三区怡红院 | 国产91精品系列在线观看 | 国产成人精品视频播放 | 中文字幕福利 |