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


Posted in PHP onFebruary 03, 2017

本文实例讲述了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 disk_free_space 返回目录可用空间
May 10 PHP
php中DOMElement操作xml文档实例演示
Mar 26 PHP
浅析PKI加密解密 OpenSSL
Jul 01 PHP
PHP+MYSQL会员系统的开发实例教程
Aug 23 PHP
PHP判断IP并转跳到相应城市分站的方法
Mar 25 PHP
php数组索引与键值操作技巧实例分析
Jun 24 PHP
功能强大的php文件上传类
Aug 29 PHP
PHP生成唯一ID之SnowFlake算法
Dec 17 PHP
php提交表单时保留多个空格及换行的文本样式的方法
Jun 20 PHP
PHP微信模板消息操作示例
Jun 29 PHP
浅谈PHP中pack、unpack的详细用法
Mar 12 PHP
Linux系统下安装PHP7.3版本
Jun 26 PHP
php删除txt文件指定行及按行读取txt文档数据的方法
Jan 30 #PHP
php指定长度分割字符串str_split函数用法示例
Jan 30 #PHP
php使用自定义函数实现汉字分割替换功能示例
Jan 30 #PHP
PHPExcel在linux环境下导出报500错误的解决方法
Jan 26 #PHP
超强多功能php绿色集成环境详解
Jan 25 #PHP
php 中奖概率算法实现代码
Jan 25 #PHP
PHP封装函数实现生成随机的字符串验证码
Jan 24 #PHP
You might like
php实现四舍五入的方法小结
2015/03/03 PHP
让firefox支持IE的一些方法的javascript扩展函数代码
2010/01/02 Javascript
JQuery弹出层示例可自定义
2014/05/19 Javascript
extjs 时间范围选择自动判断的实现代码
2014/06/24 Javascript
BAT及各大互联网公司2014前端笔试面试题--JavaScript篇
2014/10/29 Javascript
jquery.map()方法的使用详解
2015/07/09 Javascript
如何使用jQuery技术开发ios风格的页面导航菜单
2015/07/29 Javascript
jquery实现Slide Out Navigation滑出式菜单效果代码
2015/09/07 Javascript
javaScript实现可缩放的显示区效果代码
2015/10/26 Javascript
完美实现bootstrap分页查询
2015/12/09 Javascript
解决jQuery ajax请求在IE6中莫名中断的问题
2016/06/20 Javascript
jquery获取transform里的值实现方法
2017/12/12 jQuery
vue中进入详情页记住滚动位置的方法(keep-alive)
2018/09/21 Javascript
vue使用v-for实现hover点击效果
2018/09/29 Javascript
js实现点击图片在屏幕中间弹出放大效果
2019/09/11 Javascript
vue-i18n实现中英文切换的方法
2020/07/06 Javascript
浅谈pyqt5中信号与槽的认识
2019/02/17 Python
python实现nao机器人身体躯干和腿部动作操作
2019/04/29 Python
解决Python安装时报缺少DLL问题【两种解决方法】
2019/07/15 Python
通过python3实现投票功能代码实例
2019/09/26 Python
pygame实现飞机大战
2020/03/11 Python
Python环境下安装PyGame和PyOpenGL的方法
2020/03/25 Python
JAVA SWT事件四种写法实例解析
2020/06/05 Python
python中wheel的用法整理
2020/06/15 Python
python中scipy.stats产生随机数实例讲解
2021/02/19 Python
前端水印的简单实现代码示例
2020/12/02 HTML / CSS
应聘自荐信
2013/12/14 职场文书
工程班组长岗位职责
2013/12/30 职场文书
食品行业求职人的自我评价
2014/01/19 职场文书
大学毕业感言一句话
2014/02/06 职场文书
黄金搭档广告词
2014/03/21 职场文书
党员承诺践诺书
2014/05/20 职场文书
法人代表证明书
2014/09/18 职场文书
初中中等生评语
2014/12/29 职场文书
南京导游词
2015/02/03 职场文书
初婚初育证明范本
2015/06/18 职场文书