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 管理系统程序中的后门
Aug 05 PHP
php 操作excel文件的方法小结
Dec 31 PHP
php中自定义函数dump查看数组信息类似var_dump
Jan 27 PHP
php删除数组元素示例分享
Feb 17 PHP
PHP+ajaxfileupload+jcrop插件完美实现头像上传剪裁
Jun 09 PHP
PHP获取youku视频真实flv文件地址的方法
Dec 23 PHP
在Linux系统的服务器上隐藏PHP版本号的方法
Jun 06 PHP
详解PHP实现执行定时任务
Dec 21 PHP
php使用curl并发减少后端访问时间的方法分析
May 12 PHP
PHP微信模板消息操作示例
Jun 29 PHP
PHP设计模式之组合模式定义与应用示例
Feb 01 PHP
PHP设计模式之迭代器模式Iterator实例分析【对象行为型】
Apr 26 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
PL-880隐藏功能
2021/03/01 无线电
一个取得文件扩展名的函数
2006/10/09 PHP
PHP中去掉字符串首尾空格的方法
2012/05/19 PHP
PHP使用pdo实现事务处理操作示例
2018/09/05 PHP
Aster vs Newbee BO3 第三场2.18
2021/03/10 DOTA
JS截取字符串常用方法整理及使用示例
2013/10/18 Javascript
IE下JS保存图片的简单实例
2016/07/15 Javascript
angularjs 源码解析之scope
2016/08/22 Javascript
AngularJS表单验证中级篇(3)
2016/09/28 Javascript
JS经典正则表达式笔试题汇总
2016/12/15 Javascript
layui 给数据表格加序号的方法
2018/08/20 Javascript
详解原生JS回到顶部
2019/03/25 Javascript
vue实现滑动切换效果(仅在手机模式下可用)
2020/06/29 Javascript
WEEX环境搭建与入门详解
2019/10/16 Javascript
js实现拖动缓动效果
2020/01/13 Javascript
Node.js web 应用如何封装到Docker容器中
2020/09/01 Javascript
Javascript柯里化实现原理及作用解析
2020/10/22 Javascript
[09:40]DAC2018 4.5 SOLO赛 MidOne vs Miracle
2018/04/06 DOTA
[40:01]OG vs Winstrike 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
Python获取脚本所在目录的正确方法
2014/04/15 Python
Python如何使用bokeh包和geojson数据绘制地图
2020/03/21 Python
利用python爬取有道词典的方法
2020/12/08 Python
Python脚本调试工具安装过程
2021/01/11 Python
python sleep和wait对比总结
2021/02/03 Python
Biblibili视频投稿接口分析并以Python实现自动投稿功能
2021/02/05 Python
HTML5边玩边学(2)基础绘图实现方法
2010/09/21 HTML / CSS
NFL欧洲商店(德国):NFL Europe Shop DE
2018/11/03 全球购物
adidas爱尔兰官方网站:阿迪达斯运动鞋和运动服
2019/11/01 全球购物
中职生自荐信
2013/10/13 职场文书
酒店前厅员工辞职信
2014/01/08 职场文书
美德好少年事迹材料
2014/01/19 职场文书
家长学校培训材料
2014/08/20 职场文书
KTV门卫岗位职责
2014/10/09 职场文书
2015年团支书工作总结
2015/04/03 职场文书
婚宴祝酒词大全
2015/08/10 职场文书
Innodb存储引擎中的后台线程详解
2022/04/03 MySQL