php实现xml转换数组的方法示例
发布时间:2022-07-25 09:41:19 所属栏目:PHP教程 来源:互联网
导读:?php $info= ?xml version=1.0encoding=utf-8? data GeocoderSearchResponse statusOK/status result location lat39.94921/lat lng116.463619/lng /location precise0/precise confidence50/confidence level脚本/level /result /GeocoderSearchResponse Ge
|
<?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); functionxml2array($xmlobject) { if($xmlobject) { foreach((array)$xmlobjectas$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" } } } } (编辑:承德站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
