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 相关文章推荐
真正根据utf8编码的规律来进行截取字符串的函数(utf8版sub_str )
Oct 24 PHP
php include和require的区别深入解析
Jun 17 PHP
php实现telnet功能示例
Apr 08 PHP
php中mysql连接和基本操作代码(快速测试使用,简单方便)
Apr 25 PHP
php采用curl模仿登录人人网发布动态的方法
Nov 07 PHP
php学习笔记之面向对象
Nov 08 PHP
php curl登陆qq后获取用户信息时证书错误
Feb 03 PHP
PHP Web木马扫描器代码分享
Sep 06 PHP
PHP批量删除jQuery操作
Jul 23 PHP
详解提高使用Java反射的效率方法
Apr 29 PHP
Thinkphp5框架ajax接口实现方法分析
Aug 28 PHP
PHP pthreads v3下的Volatile简介与使用方法示例
Feb 21 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源代码
2013/06/26 PHP
PHP中的switch语句的用法实例详解
2015/10/21 PHP
php实现的mysqldb读写分离操作类示例
2017/02/07 PHP
『jQuery』取指定url格式及分割函数应用
2013/04/22 Javascript
不使用浏览器运行javascript代码的方法
2013/07/24 Javascript
JQuery插件iScroll实现下拉刷新,滚动翻页特效
2014/06/22 Javascript
微信JS接口汇总及使用详解
2015/01/09 Javascript
javascript实现点击按钮弹出一个可关闭层窗口同时网页背景变灰的方法
2015/05/13 Javascript
JQUERY实现网页右下角固定位置展开关闭特效的方法
2015/07/27 Javascript
uploadify多文件上传参数设置技巧
2015/11/16 Javascript
js表单提交和submit提交的区别实例分析
2015/12/10 Javascript
js实现prototype扩展的方法(字符串,日期,数组扩展)
2016/01/14 Javascript
浅谈javascript中的call、apply、bind
2016/03/06 Javascript
深入理解逻辑表达式的用法 与或非的用法
2016/06/06 Javascript
原生 JS Ajax,GET和POST 请求实例代码
2016/06/08 Javascript
js 创建对象 经典模式全面了解
2016/08/16 Javascript
纯js模仿windows系统日历
2017/02/04 Javascript
JavaScript实现三级联动菜单效果
2017/08/16 Javascript
layui实现多图片上传并限制上传的图片数量
2019/09/26 Javascript
JavaScript 变量,数据类型基础实例详解【变量、字符串、数组、对象等】
2020/01/04 Javascript
python实现将英文单词表示的数字转换成阿拉伯数字的方法
2015/07/02 Python
使用Python脚本生成随机IP的简单方法
2015/07/30 Python
Python 使用PIL中的resize进行缩放的实例讲解
2018/08/03 Python
Python PIL库图片灰化处理
2020/04/07 Python
浅谈keras保存模型中的save()和save_weights()区别
2020/05/21 Python
python实现xlwt xlrd 指定条件给excel行添加颜色
2020/07/14 Python
浅析Python中字符串的intern机制
2020/10/03 Python
python中如何使用虚拟环境
2020/10/14 Python
HTML5实现自带进度条和滑块滑杆效果
2018/04/17 HTML / CSS
美国开幕式潮店:Opening Ceremony
2018/02/10 全球购物
.NET里面如何取得当前的屏幕分辨率
2012/12/06 面试题
护理学专业求职信
2014/06/29 职场文书
中学生清明节演讲稿
2015/03/18 职场文书
2015年小学语文教学工作总结
2015/05/25 职场文书
土木工程生产实习心得体会
2016/01/22 职场文书
Windows Server 修改远程桌面端口的实现
2022/06/25 Servers