PHP简单实现解析xml为数组的方法


Posted in PHP onMay 02, 2018

本文实例讲述了PHP简单实现解析xml为数组的方法。分享给大家供大家参考,具体如下:

最近想要做一个插件机制,需要用到xml,在解析xml时候需要转换为数组,特意记录一个此种解析方式

xmlDemo.xml文件:

<?xml version="1.0" encoding="UTF-8"?>
<main xmlns="http://www.xiaoetongo.cn" versionCode="1.0">
<controller co="Aritles">
<meth title="测试插件" do="aritle"/>
</controller>
<controller co="Ari">
<meth title="测试插件" do="ar"/>
<meth title="测试插件" do="a"/>
</controller>
<install><![CDATA[]]></install>
<upgrade><![CDATA[]]></upgrade>
</main>

php代码:

<?php
$xmls=file_get_contents("xmlDemo.xml");
$xml =simplexml_load_string($xmls);
$xmljson= json_encode($xml);
$xml=json_decode($xmljson,true);
var_dump($xml);

运行结果:

array(4) {
 ["@attributes"]=>
 array(1) {
  ["versionCode"]=>
  string(3) "1.0"
 }
 ["controller"]=>
 array(2) {
  [0]=>
  array(2) {
   ["@attributes"]=>
   array(1) {
    ["co"]=>
    string(7) "Aritles"
   }
   ["meth"]=>
   array(1) {
    ["@attributes"]=>
    array(2) {
     ["title"]=>
     string(12) "测试插件"
     ["do"]=>
     string(6) "aritle"
    }
   }
  }
  [1]=>
  array(2) {
   ["@attributes"]=>
   array(1) {
    ["co"]=>
    string(3) "Ari"
   }
   ["meth"]=>
   array(2) {
    [0]=>
    array(1) {
     ["@attributes"]=>
     array(2) {
      ["title"]=>
      string(12) "测试插件"
      ["do"]=>
      string(2) "ar"
     }
    }
    [1]=>
    array(1) {
     ["@attributes"]=>
     array(2) {
      ["title"]=>
      string(12) "测试插件"
      ["do"]=>
      string(1) "a"
     }
    }
   }
  }
 }
 ["install"]=>
 array(0) {
 }
 ["upgrade"]=>
 array(0) {
 }
}
PHP 相关文章推荐
提升PHP执行速度全攻略
Oct 09 PHP
怎样在php中使用PDF文档功能
Oct 09 PHP
解决MySQL中文输出变成问号的问题
Jun 05 PHP
浅析php header 跳转
Jun 17 PHP
PHP exif扩展方法开启详解
Jul 28 PHP
Php-Redis安装测试笔记
Mar 05 PHP
PHP5.2下preg_replace函数的问题
May 08 PHP
php mailer类调用远程SMTP服务器发送邮件实现方法
Mar 04 PHP
php ajax实现文件上传进度条
Mar 29 PHP
thinkphp3.x中display方法及show方法的用法实例
May 19 PHP
PHP+jQuery实现即点即改功能示例
Feb 21 PHP
PHP字符串中抽取子串操作实例分析
Jun 22 PHP
PHP实现动态压缩js与css文件的方法
May 02 #PHP
Yii2框架数据验证操作实例详解
May 02 #PHP
Yii2框架类自动加载机制实例分析
May 02 #PHP
PHP通过bypass disable functions执行系统命令的方法汇总
May 02 #PHP
购物车实现的几种方式优缺点对比
May 02 #PHP
PHP生成(支持多模板)二维码海报代码
Apr 30 #PHP
PHP实现的猴王算法(猴子选大王)示例
Apr 30 #PHP
You might like
PHP封装的数据库模型Model类完整示例【基于PDO】
2019/03/14 PHP
javascript 用记忆函数快速计算递归函数
2010/03/15 Javascript
jQuery UI AutoComplete 使用说明
2011/06/20 Javascript
javascript获取当前鼠标坐标的方法
2015/01/10 Javascript
JavaScript检测弹出窗口是否已经关闭的方法
2015/03/24 Javascript
JavaScript使ifram跨域相互访问及与PHP通信的实例
2016/03/03 Javascript
关于JavaScript和jQuery的类型判断详解
2016/10/08 Javascript
微信小程序 地图map详解及简单实例
2017/01/10 Javascript
NodeJs 模仿SIP话机注册的方法
2019/06/21 NodeJs
jquery实现点击弹出对话框
2020/02/08 jQuery
微信小程序实现日历签到
2020/09/21 Javascript
vue+element_ui上传文件,并传递额外参数操作
2020/12/05 Vue.js
Tornado服务器中绑定域名、虚拟主机的方法
2014/08/22 Python
python调用c++ ctype list传数组或者返回数组的方法
2019/02/13 Python
Ubuntu+python将nii图像保存成png格式
2019/07/18 Python
python 实现让字典的value 成为列表
2019/12/16 Python
解决pycharm安装第三方库失败的问题
2020/05/09 Python
Python实现Keras搭建神经网络训练分类模型教程
2020/06/12 Python
在 Windows 下搭建高效的 django 开发环境的详细教程
2020/07/27 Python
python 基于wx实现音乐播放
2020/11/24 Python
python中字符串的编码与解码详析
2020/12/03 Python
英国No.1文具和办公用品在线:Euroffice
2016/09/21 全球购物
香港最新科技与优质家居产品购物网站:J SELECT
2018/08/21 全球购物
应聘自荐信
2013/12/14 职场文书
服装促销活动方案
2014/02/23 职场文书
战友聚会主持词
2014/04/02 职场文书
副处级干部考察材料
2014/05/17 职场文书
普通党员整改措施
2014/10/24 职场文书
感谢信的格式
2015/01/21 职场文书
试用期自我评价范文
2015/03/10 职场文书
公司财务人员岗位职责
2015/04/14 职场文书
办公用品质量保证书
2015/05/11 职场文书
复兴之路观后感
2015/06/02 职场文书
电力安全教育培训心得体会
2016/01/11 职场文书
css背景和边框标签实例详解
2021/05/21 HTML / CSS
MySQL中的全表扫描和索引树扫描
2022/05/15 MySQL