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 相关文章推荐
如何去掉文章里的 html 语法
Oct 09 PHP
基于Windows下Apache PHP5.3.1安装教程
Jan 08 PHP
PHP 5.3新特性命名空间规则解析及高级功能
Mar 11 PHP
PHP网站备份程序代码分享
Jun 10 PHP
php empty()与isset()区别的详细介绍
Jun 17 PHP
PHP 关于访问控制的和运算符优先级介绍
Jul 08 PHP
php 判断网页是否是utf8编码的方法
Jun 06 PHP
Drupal简体中文语言包安装教程
Sep 27 PHP
PHP输入流php://input实例讲解
Dec 22 PHP
PHP错误处理函数
Apr 03 PHP
php微信开发之谷歌测距
Jun 14 PHP
PHP简单实现图片格式转换(jpg转png,gif转png等)
Oct 30 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下通过curl抓取yahoo boss 搜索结果的实现代码
2011/06/10 PHP
PHP 利用Mail_MimeDecode类提取邮件信息示例
2014/01/26 PHP
在Yii框架中使用PHP模板引擎Twig的例子
2014/06/13 PHP
一个图片地址分解程序(用于PHP小偷程序)
2014/08/23 PHP
php中解析带中文字符的url函数分享
2015/01/20 PHP
php实现在新浪云中使用imagick生成缩略图并上传的方法
2016/09/26 PHP
(currentStyle)javascript为何有时用style得不到已设定的CSS的属性
2007/08/15 Javascript
日历查询的算法 如何计算某一天是星期几
2012/12/12 Javascript
JavaScript字符串对象split方法入门实例(用于把字符串分割成数组)
2014/10/16 Javascript
DOM节点的替换或修改函数replaceChild()用法实例
2015/01/12 Javascript
JS去除iframe滚动条的方法
2015/04/01 Javascript
Eclipse引入jquery报错如何解决
2015/12/01 Javascript
详解JavaScript设计模式开发中的桥接模式使用
2016/05/18 Javascript
JavaScript原生数组Array常用方法
2017/04/06 Javascript
Bootstrap布局之栅格系统学习笔记
2017/05/04 Javascript
vue2.x select2 指令封装详解
2017/10/12 Javascript
js事件on动态绑定数据,绑定多个事件的方法
2018/09/15 Javascript
Jquery的autocomplete插件用法及参数讲解
2019/03/12 jQuery
浅谈React中组件逻辑复用的那些事儿
2020/05/21 Javascript
vue swipeCell滑动单元格(仿微信)的实现示例
2020/09/14 Javascript
Vant+postcss-pxtorem 实现浏览器适配功能
2021/02/05 Javascript
[03:08]Ti4观战指南上
2014/07/07 DOTA
简单的python后台管理程序
2017/04/13 Python
python基础练习之几个简单的游戏
2017/11/10 Python
Python(Django)项目与Apache的管理交互的方法
2018/05/16 Python
Django使用HttpResponse返回图片并显示的方法
2018/05/22 Python
如何基于Python实现数字类型转换
2020/02/07 Python
PyCharm Ctrl+Shift+F 失灵的简单有效解决操作
2021/01/15 Python
英国No.1体育用品零售商:SportsDirect.com
2019/10/16 全球购物
Farah官方网站:男士服装及配件
2019/11/01 全球购物
财务部总监岗位职责
2014/03/12 职场文书
2014年幼儿园工作总结
2014/11/10 职场文书
新学期开学寄语2016
2015/12/04 职场文书
Python中zipfile压缩包模块的使用
2021/05/14 Python
Python3.8官网文档之类的基础语法阅读
2021/09/04 Python
我去timi了,一起去timi是什么意思?
2022/04/13 杂记