本文實例講述了php實現xml轉換數組的方法。分享給大家供大家參考,具體如下:
<?php$info = '<?xml version="1.0" encoding="utf-8" ?> <data> <GeocoderSearchResponse> <status>OK</status> <result> <location> <lat>39.94921</lat> <lng>116.463619</lng> </location> <precise>0</precise> <confidence>50</confidence> <level>腳本</level> </result> </GeocoderSearchResponse> <GeocoderSearchResponse> <status>OK</status> <result> <location> <lat>39</lat> <lng>116</lng> </location> <precise>0</precise> <confidence>50</confidence> <level>腳本123</level> </result> </GeocoderSearchResponse> </data>';$xml = simplexml_load_string($info);function xml2array($xmlobject) { if ($xmlobject) { foreach ((array)$xmlobject as $k=>$v) { $data[$k] = !is_string($v) ? xml2array($v) : $v; } return $data; }}$data = xml2array($xml);var_dump($data);?>
運行結果如下:
array(1) { ["GeocoderSearchResponse"]=> array(2) {  [0]=>  array(2) {   ["status"]=>   string(2) "OK"   ["result"]=>   array(4) {    ["location"]=>    array(2) {     ["lat"]=>     string(8) "39.94921"     ["lng"]=>     string(10) "116.463619"    }    ["precise"]=>    string(1) "0"    ["confidence"]=>    string(2) "50"    ["level"]=>    string(6) "腳本"   }  }  [1]=>  array(2) {   ["status"]=>   string(2) "OK"   ["result"]=>   array(4) {    ["location"]=>    array(2) {     ["lat"]=>     string(2) "39"     ["lng"]=>     string(3) "116"    }    ["precise"]=>    string(1) "0"    ["confidence"]=>    string(2) "50"    ["level"]=>    string(9) "腳本123"   }  } }}希望本文所述對大家PHP程序設計有所幫助。
新聞熱點
疑難解答
圖片精選