PHP XML和数组互相转换详解


Posted in PHP onOctober 26, 2016

PHP XML和数组互相转换

//数组转XML
  function arrayToXml($arr)
  {
    $xml = "<xml>";
    foreach ($arr as $key=>$val)
    {
      if (is_numeric($val)){
        $xml.="<".$key.">".$val."</".$key.">";
      }else{
         $xml.="<".$key."><![CDATA[".$val."]]></".$key.">";
      }
    }
    $xml.="</xml>";
    return $xml;
  }

  //将XML转为array
  function xmlToArray($xml)
  {  
    //禁止引用外部xml实体
    libxml_disable_entity_loader(true);
    $values = json_decode(json_encode(simplexml_load_string($xml, 'SimpleXMLElement', LIBXML_NOCDATA)), true);    
    return $values;
  }

五个在XML文件中预定义好的实体:

< 小于号
> > 大于号
& &
' ' 单引号
" " 双引号  

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

PHP 相关文章推荐
不用数据库的多用户文件自由上传投票系统(2)
Oct 09 PHP
PHP setcookie指定domain参数后,在IE下设置cookie失效的解决方法
Sep 09 PHP
Uncaught exception com_exception with message Failed to create COM object
Jan 11 PHP
php使用curl存储cookie的示例
Mar 31 PHP
php提交post数组参数实例分析
Dec 17 PHP
php格式化json函数示例代码
May 12 PHP
PHP页面间传递值和保持值的方法
Aug 24 PHP
thinkPHP简单调用函数与类库的方法
Mar 15 PHP
[原创]PHP实现字节数Byte转换为KB、MB、GB、TB的方法
Aug 31 PHP
PHP实现模拟http请求的方法分析
Dec 20 PHP
php empty 函数判断结果为空但实际值却为非空的原因解析
May 28 PHP
PHP图像处理技术实例总结【绘图、水印、验证码、图像压缩】
Dec 08 PHP
PHP对XML内容进行修改和删除实例代码
Oct 26 #PHP
php array_merge_recursive 数组合并
Oct 26 #PHP
php抛出异常与捕捉特定类型的异常详解
Oct 26 #PHP
php array_map使用自定义的函数处理数组中的每个值
Oct 26 #PHP
AES加解密在php接口请求过程中的应用示例
Oct 26 #PHP
centos+php+coreseek+sphinx+mysql之一coreseek安装篇
Oct 25 #PHP
在Thinkphp中使用ajax实现无刷新分页的方法
Oct 25 #PHP
You might like
php 向访客和爬虫显示不同的内容
2009/11/09 PHP
php将12小时制转换成24小时制的方法
2015/03/31 PHP
PHP用反撇号执行外部命令
2015/04/14 PHP
PHP判断json格式是否正确的实现代码
2017/09/20 PHP
javascript之水平横向滚动歌词同步的应用
2007/05/07 Javascript
SyntaxHighlighter代码加色使用方法
2008/09/07 Javascript
Javascript this关键字使用分析
2008/10/21 Javascript
ASP.NET jQuery 实例15 通过控件CustomValidator验证CheckBoxList
2012/02/03 Javascript
jquery单行文字向上滚动效果示例
2014/03/06 Javascript
js中对函数设置默认参数值的3种方法
2015/10/23 Javascript
关于jQuery EasyUI 中刷新Tab选项卡后一个页面变形的解决方法
2017/03/02 Javascript
如何让你的JS代码更好看易读
2017/12/01 Javascript
vue中v-model的应用及使用详解
2018/06/27 Javascript
详解VUE中常用的几种import(模块、文件)引入方式
2018/07/03 Javascript
cnpm加速Angular项目创建的方法
2018/09/07 Javascript
脚手架vue-cli工程webpack的作用和特点
2018/09/29 Javascript
fetch 如何实现请求数据
2018/12/20 Javascript
vue页面加载时的进度条功能(实例代码)
2020/01/13 Javascript
[40:01]OG vs Winstrike 2018国际邀请赛小组赛BO2 第一场 8.19
2018/08/21 DOTA
wxPython 入门教程
2008/10/07 Python
Android分包MultiDex策略详解
2017/10/30 Python
解决win64 Python下安装PIL出错问题(图解)
2018/09/03 Python
Python列表list排列组合操作示例
2018/12/18 Python
基于Python的ModbusTCP客户端实现详解
2019/07/13 Python
Python Django view 两种return的实现方式
2020/03/16 Python
利用Python如何制作贪吃蛇及AI版贪吃蛇详解
2020/08/24 Python
python 如何调用 dubbo 接口
2020/09/24 Python
HTML实现代码雨源码及效果示例
2020/02/25 HTML / CSS
MyBag中文网:英国著名的时尚包袋电商零售网站
2020/07/31 全球购物
厨房领班竞聘演讲稿
2014/04/23 职场文书
学校党风廉政建设调研报告
2015/01/01 职场文书
奖学金感谢信
2015/01/21 职场文书
五年级作文之成长
2019/09/16 职场文书
MySQL 那些常见的错误设计规范,你都知道吗
2021/07/16 MySQL
css3中2D转换之有趣的transform形变效果
2022/02/24 HTML / CSS
win7配置本地ftp服务器的图文教程
2022/08/05 Servers