php的XML文件解释类应用实例

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了php的XML文件解释类应用实例脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

本文实例讲述了PHP的XML文件解释类及其用法,是非常实用的技巧。分享给大家供大家参考。具体如下:

XMLParser.class.PHP文件如下:

PHP;">

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);
    }

/** 解释xml内容

  • @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 转 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 转换后的数据
  • @return Array
    */
    private function response($flag=false,$data=array()){
    return array($flag,$data);
    }
    }
    ?>

脚本宝典总结

以上是脚本宝典为你收集整理的php的XML文件解释类应用实例全部内容,希望文章能够帮你解决php的XML文件解释类应用实例所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: