php实现XML和数组的相互转化功能示例


Posted in PHP onFebruary 08, 2017

本文实例讲述了php实现XML和数组的相互转化功能。分享给大家供大家参考,具体如下:

数组转化为xml:

function arrtoxml($arr,$dom=0,$item=0){
  if (!$dom){
    $dom = new DOMDocument("1.0");
  }
  if(!$item){
    $item = $dom->createElement("root");
    $dom->appendChild($item);
  }
  foreach ($arr as $key=>$val){
    $itemx = $dom->createElement(is_string($key)?$key:"item");
    $item->appendChild($itemx);
    if (!is_array($val)){
      $text = $dom->createTextNode($val);
      $itemx->appendChild($text);
    }else {
      arrtoxml($val,$dom,$itemx);
    }
  }
  return $dom->saveXML();
}

xml转化为数组:

function xmltoarr($path){
  $xmlfile = file_get_contents($path);//提取xml文档中的内容以字符串格式赋给变量
  $ob= simplexml_load_string($xmlfile);//将字符串转化为变量
  $json = json_encode($ob);//将对象转化为JSON格式的字符串
  $configData = json_decode($json, true);//将JSON格式的字符串转化为数组
  print_r($configData);
}
PHP 相关文章推荐
PHP 和 MySQL 开发的 8 个技巧
Oct 09 PHP
基于asp+ajax和数据库驱动的二级联动菜单
May 06 PHP
Apache 配置详解(最好的APACHE配置教程)
Jul 04 PHP
PHP语言中global和$GLOBALS[]的分析 之二
Feb 02 PHP
PHP中cookie和session的区别实例分析
Aug 28 PHP
PHP中ini_set与ini_get用法实例
Nov 04 PHP
php读取XML的常见方法实例总结
Apr 25 PHP
php实现评论回复删除功能
May 23 PHP
php面向对象的用户登录身份验证
Jun 08 PHP
Laravel框架集成UEditor编辑器的方法图文与实例详解
Apr 17 PHP
Laravel实现ORM带条件搜索分页
Oct 24 PHP
Laravel实现通过blade模板引擎渲染视图
Oct 25 PHP
PHP 获取指定地区的天气实例代码
Feb 08 #PHP
PHP使用DOM和simplexml读取xml文档的方法示例
Feb 08 #PHP
PHP判断数组是否为空的常用方法(五种方法)
Feb 08 #PHP
PHP基于DOM创建xml文档的方法示例
Feb 08 #PHP
PHP输出XML格式数据的方法总结
Feb 08 #PHP
PHP中大括号'{}'用法实例总结
Feb 08 #PHP
Yii CFileCache 获取不到值的原因分析
Feb 08 #PHP
You might like
php实现根据字符串生成对应数组的方法
2014/09/22 PHP
PHP中抽象类和抽象方法概念与用法分析
2016/05/24 PHP
PHP hebrev()函数用法讲解
2019/02/21 PHP
JSON扫盲帖 JSON.as类教程
2009/02/16 Javascript
javascript的offset、client、scroll使用方法详解
2012/12/25 Javascript
让页面上两个div中的滚动条(滑块)同步运动示例
2013/08/07 Javascript
jquery mobile changepage的三种传参方法介绍
2013/09/13 Javascript
jquery实现checkbox 全选/全不选的通用写法
2014/02/22 Javascript
JavaScript实现的一个计算数字步数的算法分享
2014/12/06 Javascript
jQuery应用之jQuery链用法实例
2015/01/19 Javascript
jquery UI Datepicker时间控件的使用方法(终结版)
2015/11/07 Javascript
详解maxlength属性在textarea里奇怪的表现
2015/12/27 Javascript
基于JS判断iframe是否加载成功的方法(多种浏览器)
2016/05/13 Javascript
AngularJS使用ng-options指令实现下拉框
2016/08/23 Javascript
深入理解Node.js 事件循环和回调函数
2016/11/02 Javascript
javascript trie前缀树的示例
2018/01/29 Javascript
在Create React App中使用CSS Modules的方法示例
2019/01/15 Javascript
JavaScript使用Math.random()生成简单的验证码
2019/01/21 Javascript
JavaScript如何实现元素全排列实例代码
2019/05/14 Javascript
微信小程序中如何计算距离某个节日还有多少天
2019/07/15 Javascript
vue限制输入框只能输入8位整数和2位小数的代码
2019/11/06 Javascript
JS模拟实现京东快递单号查询
2020/11/30 Javascript
vue3 watch和watchEffect的使用以及有哪些区别
2021/01/26 Vue.js
用Python编写脚本使IE实现代理上网的教程
2015/04/23 Python
Python使用minidom读写xml的方法
2015/06/03 Python
Python基于列表模拟堆栈和队列功能示例
2018/01/05 Python
Django实现支付宝付款和微信支付的示例代码
2018/07/25 Python
python输出带颜色字体实例方法
2019/09/01 Python
Python3使用xml.dom.minidom和xml.etree模块儿解析xml文件封装函数的方法
2019/09/23 Python
自适应线性神经网络Adaline的python实现详解
2019/09/30 Python
CSS+jQuery实现的在线答题功能
2015/04/25 HTML / CSS
跑步、骑行和铁人三项的高性能眼镜和服装:ROKA
2018/07/06 全球购物
英国行业制服供应商:Alexandra
2019/09/14 全球购物
Traffic People官网:女式花裙、上衣和连身裤
2020/10/12 全球购物
小学安全教育材料
2014/02/17 职场文书
Python的flask接收前台的ajax的post数据和get数据的方法
2021/04/12 Python