首页 > 语言 > PHP > 正文

php实现xml转换数组的方法示例

2024-05-04 23:54:38
字体:
来源:转载
供稿:网友

本文实例讲述了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程序设计有所帮助。


注:相关教程知识阅读请移步到PHP教程频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

图片精选