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 相关文章推荐
屏蔽浏览器缓存另类方法
Oct 09 PHP
PHP常用技巧总结(附函数代码)
Feb 04 PHP
php中导出数据到excel时数字变为科学计数的解决方法
Feb 03 PHP
phpize的深入理解
Jun 03 PHP
关于Zend Studio 配色方案插件的介绍
Jun 24 PHP
PHP语法自动检查的Vim插件
Aug 11 PHP
使用php方法curl抓取AJAX异步内容思路分析及代码分享
Aug 25 PHP
PHP两种快速排序算法实例
Feb 15 PHP
PHP导出Excel实例讲解
Jan 24 PHP
joomla组件开发入门教程
May 04 PHP
tp5实现微信小程序多图片上传到服务器功能
Jul 16 PHP
PHP中define() 与 const定义常量的区别详解
Jun 25 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使用mkdir创建多级目录入门例子
2014/05/10 PHP
PHP将回调函数作用到给定数组单元的方法
2014/08/19 PHP
php.ini中的request_order推荐设置
2015/05/10 PHP
PHP自定义函数格式化json数据示例
2016/09/14 PHP
ThinkPHP模板标签eq if 中区分0,null,false的方法
2017/03/24 PHP
JQuery对checkbox操作 (循环获取)
2011/05/20 Javascript
js 三级关联菜单效果实例
2013/08/13 Javascript
jquery checkbox实现单选小例
2013/11/27 Javascript
二叉树先序遍历的非递归算法具体实现
2014/01/09 Javascript
JavaScript利用正则表达式去除日期中的“-”
2014/07/01 Javascript
JavaScript判断数组重复内容的两种方法(推荐)
2016/06/06 Javascript
js仿淘宝评价评分功能
2017/02/28 Javascript
浅谈React中组件逻辑复用的那些事儿
2020/05/21 Javascript
python遍历类中所有成员的方法
2015/03/18 Python
Python中的ceil()方法使用教程
2015/05/14 Python
python3抓取中文网页的方法
2015/07/28 Python
使用Python的turtle模块画图的方法
2017/11/15 Python
理解python中生成器用法
2017/12/20 Python
Python针对给定列表中元素进行翻转操作的方法分析
2018/04/27 Python
使用python实现画AR模型时序图
2019/11/20 Python
基础的CSS3弹性盒Flexbox布局使用实例
2016/04/08 HTML / CSS
app内嵌H5 webview 本地缓存问题的解决
2020/10/19 HTML / CSS
英国领先的在线旅游和休闲零售商:lastminute.com
2019/01/23 全球购物
口头翻译求职人自荐信
2013/12/07 职场文书
骨干教师培训感言
2014/01/16 职场文书
导购员的岗位职责
2014/02/08 职场文书
人代会标语
2014/06/30 职场文书
大学生考试作弊检讨书
2014/09/21 职场文书
授权收款委托书
2014/09/23 职场文书
设备收款委托书范本
2014/10/02 职场文书
正风肃纪剖析材料范文
2014/10/10 职场文书
离职信范文
2015/06/23 职场文书
2016特色励志班级口号
2015/12/24 职场文书
《分数的意义》教学反思
2016/02/20 职场文书
SpringBoot2零基础到精通之数据与页面响应
2022/03/22 Java/Android
React更新渲染原理深入分析
2022/12/24 Javascript