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 相关文章推荐
全文搜索和替换
Oct 09 PHP
php session安全问题分析
Jun 24 PHP
分割GBK中文遭遇乱码的解决方法
Aug 09 PHP
smarty模板中使用get、post、request、cookies、session变量的方法
Apr 24 PHP
smarty的section嵌套循环用法示例
May 28 PHP
PHP数组编码gbk与utf8互相转换的两种方法
Sep 01 PHP
PHP使用SWOOLE扩展实现定时同步 MySQL 数据
Apr 09 PHP
php使用imagecopymerge()函数创建半透明水印
Jan 25 PHP
PHP运用foreach神奇的转换数组(实例讲解)
Feb 01 PHP
PHP获取ttf格式文件字体名的方法示例
Mar 06 PHP
Laravel 手动开关 Eloquent 修改器的操作方法
Dec 30 PHP
常见的5个PHP编码小陋习以及优化实例讲解
Feb 27 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
实现树状结构的两种方法
2006/10/09 PHP
PHP下通过file_get_contents的代理使用方法
2011/02/16 PHP
php实现的漂亮分页方法
2014/04/17 PHP
Drupal简体中文语言包安装教程
2014/09/27 PHP
Yii2 RESTful中api的使用及开发实例详解
2016/07/06 PHP
php可变长参数处理函数详解
2017/02/22 PHP
ExtJS 入门
2010/10/29 Javascript
JS中使用Array函数shift和pop创建可忽略参数的例子
2014/05/28 Javascript
a标签的href与onclick事件的区别详解
2014/11/12 Javascript
js实现延迟加载的方法
2015/06/24 Javascript
JS脚本根据手机浏览器类型跳转WAP手机网站(两种方式)
2015/08/04 Javascript
js实现三张图(文)片一起切换的banner焦点图
2015/08/25 Javascript
Bootstrap 最常用的JS插件系列总结(图片轮播、标签切换等)
2016/07/14 Javascript
vue监听滚动事件实现滚动监听
2017/04/11 Javascript
解决JQuery的ajax函数执行失败alert函数弹框一闪而过问题
2019/04/10 jQuery
jQuery动态生成的元素绑定事件操作实例分析
2019/05/04 jQuery
小程序中this.setData的使用和注意事项
2019/08/28 Javascript
Vue中错误图片的处理的实现代码
2019/11/07 Javascript
跟老齐学Python之字典,你还记得吗?
2014/09/20 Python
Python获取DLL和EXE文件版本号的方法
2015/03/10 Python
用Python进行行为驱动开发的入门教程
2015/04/23 Python
python初学之用户登录的实现过程(实例讲解)
2017/12/23 Python
Python基于列表list实现的CRUD操作功能示例
2018/01/05 Python
详解python实现线程安全的单例模式
2018/03/05 Python
Numpy掩码式数组详解
2018/04/17 Python
对Python之gzip文件读写的方法详解
2019/02/08 Python
Python实现初始化不同的变量类型为空值
2020/06/02 Python
python Autopep8实现按PEP8风格自动排版Python代码
2021/03/02 Python
兼职学生的自我评价
2013/11/24 职场文书
军训生自我鉴定范文
2013/12/27 职场文书
2015年电信员工工作总结
2015/05/26 职场文书
大国崛起观后感
2015/06/02 职场文书
地道战观后感400字
2015/06/04 职场文书
学前教育见习总结
2015/06/23 职场文书
2016公司中秋节寄语
2015/12/07 职场文书
vue3使用vuedraggable实现拖拽功能
2022/04/06 Vue.js