91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

PHP數組與XML之間的轉換方法

發布時間:2021-08-09 22:12:27 來源:億速云 閱讀:185 作者:chen 欄目:編程語言

這篇文章主要介紹“PHP數組與XML之間的轉換方法”,在日常操作中,相信很多人在PHP數組與XML之間的轉換方法問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”PHP數組與XML之間的轉換方法”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

PHP將數組轉換成XML

PHP可以將數組轉換成xml格式,簡單的辦法是遍歷數組,然后將數組的key/value轉換成xml節點,再直接echo輸出了,如:

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

我測試了下,這個最簡單,速度又快,支持多為數組,中文也不會亂碼。

另一種方法是利用DOMDocument來生成xml結構:

function arrayToXml($arr,$dom=0,$item=0){    if (!$dom){        $dom = new DOMDocument("1.0");    }    if(!$item){        $item = $dom->createElement("root");        $dom->appendChild($item);    }    foreach ($arr as $key=>$val){        $itemx = $dom->createElement(is_string($key)?$key:"item");        $item->appendChild($itemx);        if (!is_array($val)){            $text = $dom->createTextNode($val);            $itemx->appendChild($text);                    }else {            arrayToXml($val,$dom,$itemx);        }    }    return $dom->saveXML(); }

它同樣可以將數組轉換成xml,而且支持多維數組,生成的xml中文也不會亂碼。

PHP將XML轉換成數組

做接口開發的時候經常會碰到別人提交給你的是xml格式的數據,常見的微信接口、支付寶接口等,他們的接口如發送消息通信都是xml格式的,那么我們先想辦法拿到這個xml數據,然后再將其轉化成數組。

假設我們獲取到一個這樣的XML:

<root> <user>月光光abcd</user> <pvs>13002</pvs> <ips> <baidu_ip>1200</baidu_ip> <google_ip>1829</google_ip> </ips> <date>2016-06-01</date> </root>

通過simplexml_load_string()解析讀取xml數據,然后先轉成json格式,再轉換成數組。

function xmlToArray($xml){        //禁止引用外部xml實體    libxml_disable_entity_loader(true);    $xmlstring = simplexml_load_string($xml, 'SimpleXMLElement', LIBXML_NOCDATA);    $val = json_decode(json_encode($xmlstring),true);      return $val; }

調用xmlToArray()可得到以下結果:

得到數組后,我們就可以對數據進行各種處理了。

到此,關于“PHP數組與XML之間的轉換方法”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

新竹县| 芦溪县| 仪征市| 浏阳市| 夏津县| 桓台县| 周至县| 嘉峪关市| 建水县| 邓州市| 永和县| 镇雄县| 菏泽市| 抚宁县| 淮安市| 贡嘎县| 邢台市| 大荔县| 新昌县| 平远县| 通江县| 贺兰县| 江都市| 濉溪县| 金华市| 道真| 巍山| 定边县| 永平县| 长顺县| 治县。| 买车| 汶川县| 清流县| 乐亭县| 大方县| 资源县| 阿巴嘎旗| 梁平县| 朔州市| 纳雍县|