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 随机生成10位字符代码
Mar 26 PHP
php知道与问问的采集插件代码
Oct 12 PHP
基于PHP magic_quotes_gpc的使用方法详解
Jun 24 PHP
php导出csv数据在浏览器中输出提供下载或保存到文件的示例
Apr 24 PHP
Linux下手动编译安装PHP扩展的例子分享
Jul 15 PHP
php判断数组中是否存在指定键(key)的方法
Mar 17 PHP
php给图片添加文字水印方法汇总
Aug 27 PHP
php实现无限级分类查询(递归、非递归)
Mar 10 PHP
Zend Framework教程之Zend_Form组件实现表单提交并显示错误提示的方法
Mar 21 PHP
PhpStorm terminal无法输入命令的解决方法
Oct 09 PHP
CI框架无限级分类+递归的实现代码
Nov 01 PHP
php实现的中文分词类完整实例
Feb 06 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
Windows下PHP5和Apache的安装与配置
2006/09/05 PHP
php 动态多文件上传
2009/01/18 PHP
php 分库分表hash算法
2009/11/12 PHP
PHP运行SVN命令显示某用户的文件更新记录的代码
2014/01/03 PHP
PHP类型约束用法示例
2016/09/28 PHP
php检测mysql表是否存在的方法小结
2017/07/20 PHP
Yii框架 session 数据库存储操作方法示例
2019/11/18 PHP
为数据添加append,remove功能
2006/10/03 Javascript
jQuery 1.4 15个你应该知道的新特性(译)
2010/01/24 Javascript
jQuery调用ajax请求的常见方法汇总
2015/03/24 Javascript
jQuery图片特效插件Revealing实现拉伸放大
2015/04/22 Javascript
javascript中闭包概念与用法深入理解
2016/12/15 Javascript
Vue.js简易安装和快速入门(第二课)
2017/10/17 Javascript
详解vue文件中使用echarts.js的两种方式
2018/10/18 Javascript
小程序实现左滑删除功能
2018/10/30 Javascript
详解vue开发中调用微信jssdk的问题
2019/04/16 Javascript
详解微信小程序中var、let、const用法与区别
2020/01/11 Javascript
JavaScript实现拖拽功能
2020/02/11 Javascript
Python实现从url中提取域名的几种方法
2014/09/26 Python
Python基于list的append和pop方法实现堆栈与队列功能示例
2017/07/24 Python
python判断一个数是否能被另一个整数整除的实例
2018/12/12 Python
python脚本执行CMD命令并返回结果的例子
2019/08/14 Python
python numpy数组中的复制知识解析
2020/02/03 Python
自定义Django Form中choicefield下拉菜单选取数据库内容实例
2020/03/13 Python
Pycharm修改python路径过程图解
2020/05/22 Python
使用HTML5 Canvas API绘制弧线的教程
2016/03/22 HTML / CSS
麦德龙官方海外旗舰店:德国麦德龙超市
2017/12/23 全球购物
英国派对礼服和连衣裙购物网站:TFNC London
2018/07/07 全球购物
护士2014年终工作总结
2014/11/11 职场文书
沈阳故宫导游词
2015/01/31 职场文书
物业工程部主管岗位职责
2015/04/16 职场文书
2015年效能监察工作总结
2015/04/23 职场文书
幼儿园园长六一致辞
2015/07/31 职场文书
JavaScript实现贪吃蛇游戏
2021/06/16 Javascript
利用Sharding-Jdbc进行分库分表的操作代码
2022/01/22 Java/Android
Win11运行育碧游戏总是崩溃怎么办 win11玩育碧游戏出现性能崩溃的解决办法
2022/04/06 数码科技