PHP XML和数组互相转换

来源:互联网 发布:无创dna数据辨别男女 编辑:程序博客网 时间:2024/04/19 01:38
//数组转XML
一维数组    function arrayToXml($arr)    {        $xml = "<xml>";        foreach ($arr as $key=>$val)        {            if (is_numeric($val)){                $xml.="<".$key.">".$val."</".$key.">";            }else{                 $xml.="<".$key."><![CDATA[".$val."]]></".$key.">";            }        }        $xml.="</xml>";        return $xml;    }
多维数组
    function arrayToXml($arr){         $xml = "<root>";         foreach ($arr as $key=>$val){             if(is_array($val)){                 $xml.="<".$key.">".arrayToXml($val)."</".$key.">";             }else{                 $xml.="<".$key.">".$val."</".$key.">";             }         }         $xml.="</root>";         return $xml;     }    //将XML转为array    function xmlToArray($xml)    {            //禁止引用外部xml实体        libxml_disable_entity_loader(true);        $values = json_decode(json_encode(simplexml_load_string($xml, 'SimpleXMLElement', LIBXML_NOCDATA)), true);                return $values;    }

0 0