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 显示客户端IP与服务器IP的代码
Oct 12 PHP
php去掉字符串的最后一个字符附substr()的用法
Mar 23 PHP
php在多维数组中根据键名快速查询其父键以及父键值的代码
May 07 PHP
PHP header()函数使用详细(301、404等错误设置)
Apr 17 PHP
php中jpgraph类库的使用介绍
Aug 08 PHP
php防止sql注入示例分析和几种常见攻击正则表达式
Jan 12 PHP
PHP提交表单失败后如何保留已经填写的信息
Jun 20 PHP
功能强大的php分页函数
Jul 20 PHP
适合PHP初学者阅读的4本经典书籍
Sep 23 PHP
php提取微信账单的有效信息
Oct 01 PHP
基于thinkphp6.0的success、error实现方法
Nov 05 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简单命令代码集锦
2007/09/24 PHP
PHP 截取字符串函数整理(支持gb2312和utf-8)
2010/02/16 PHP
ThinkPHP3.1新特性之动态设置自动完成及自动验证示例代码
2014/06/23 PHP
php实现统计IP数及在线人数的示例代码
2020/07/22 PHP
jQuery 验证插件 Web前端设计模式(asp.net)
2010/10/17 Javascript
JavaScript ECMA-262-3 深入解析.第三章.this
2011/09/28 Javascript
extjs 04_grid 单击事件新发现
2012/11/27 Javascript
javascript:window.open弹出窗口的位置问题
2014/03/18 Javascript
jquery删除指定的html标签并保留标签内文本内容的方法
2014/04/02 Javascript
js实现右下角提示框的方法
2015/02/03 Javascript
面向切面编程(AOP)的理解
2015/05/01 Javascript
Bootstrap打造一个左侧折叠菜单的系统模板(二)
2016/05/17 Javascript
jQuery中Nicescroll滚动条插件的用法
2016/11/10 Javascript
js的OOP继承实现(必看篇)
2017/02/18 Javascript
使用jQuery实现页面定时弹出广告效果
2017/08/24 jQuery
元素全屏的设置与监听实例
2017/11/28 Javascript
利用Vue2.x开发实现JSON树的方法
2018/01/04 Javascript
vue中设置height:100%无效的问题及解决方法
2018/07/27 Javascript
微信 用脚本查看是否被微信好友删除
2016/10/28 Python
python urllib urlopen()对象方法/代理的补充说明
2017/06/29 Python
浅谈flask中的before_request与after_request
2018/01/20 Python
Pytorch之卷积层的使用详解
2019/12/31 Python
Python imutils 填充图片周边为黑色的实现
2020/01/19 Python
Python进阶之迭代器与迭代器切片教程
2020/01/29 Python
通过实例了解Python异常处理机制底层实现
2020/07/23 Python
一文带你掌握Pyecharts地理数据可视化的方法
2021/02/06 Python
戴尔美国官方折扣店:Dell Outlet
2018/02/13 全球购物
Servlet面试题库
2015/07/18 面试题
房地产营销策划方案
2014/02/08 职场文书
结婚保证书范文
2014/04/29 职场文书
成立公司计划书
2014/05/07 职场文书
军人离婚协议书样本
2014/10/21 职场文书
新娘父亲婚礼致辞
2015/07/27 职场文书
交通安全学习心得体会
2016/01/18 职场文书
2016年世界人口日宣传活动总结
2016/04/05 职场文书
基于go interface{}==nil 的几种坑及原理分析
2021/04/24 Golang