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 相关文章推荐
通过对php一些服务器端特性的配置加强php的安全
Oct 09 PHP
PHP一些常用的正则表达式字符的一些转换
Jul 29 PHP
PHP+MySQL 手工注入语句大全 推荐
Oct 30 PHP
PHP中time(),date(),mktime()区别介绍
Sep 28 PHP
推荐一款PHP+jQuery制作的列表分页的功能模块
Oct 14 PHP
PHP实现将科学计数法转换为原始数字字符串的方法
Dec 16 PHP
php中header跳转使用include包含解决参数丢失问题
May 08 PHP
PHP读取文件内容的五种方式
Dec 28 PHP
深入解析PHP的Laravel框架中的event事件操作
Mar 21 PHP
Smarty变量用法详解
May 11 PHP
PHP简单实现无限级分类的方法
May 13 PHP
PHP实现带进度条的Ajax文件上传功能示例
Jul 02 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中include()与require()的区别说明
2010/03/10 PHP
如何使用php绘制在图片上的正余弦曲线
2013/06/08 PHP
php验证手机号码
2015/11/11 PHP
WordPress中用于创建以及获取侧边栏的PHP函数讲解
2015/12/29 PHP
CentOS系统中PHP安装扩展的方式汇总
2017/04/09 PHP
prototype class详解
2006/09/07 Javascript
javascript DOM编程实例(智播客学习)
2009/11/23 Javascript
js控制的遮罩层实例介绍
2013/05/29 Javascript
Javascript执行效率全面总结
2013/11/04 Javascript
浅谈JavaScript Date日期和时间对象
2014/12/29 Javascript
JS获取表格内指定单元格html内容的方法
2015/03/31 Javascript
封装好的javascript前端分页插件pagination
2016/01/04 Javascript
微信小程序 购物车简单实例
2016/10/24 Javascript
jquery封装插件时匿名函数形参和实参的写法解释
2017/02/14 Javascript
JS 组件系列之Bootstrap Table 冻结列功能IE浏览器兼容性问题解决方案
2017/06/30 Javascript
vue配置请求本地json数据的方法
2018/04/11 Javascript
详解vue-cli官方脚手架配置
2018/07/20 Javascript
详解JS中统计函数执行次数与执行时间
2018/09/04 Javascript
javascript实现商品图片放大镜
2019/11/28 Javascript
node.js中 mysql 增删改查操作及async,await处理实例分析
2020/02/11 Javascript
JavaScript 防抖和节流遇见的奇怪问题及解决
2020/11/20 Javascript
win7 下搭建sublime的python开发环境的配置方法
2014/06/18 Python
在Django的视图(View)外使用Session的方法
2015/07/23 Python
python实现跨excel的工作表sheet之间的复制方法
2018/05/03 Python
Python调用C语言的实现
2019/07/26 Python
np.newaxis 实现为 numpy.ndarray(多维数组)增加一个轴
2019/11/30 Python
Django Serializer HiddenField隐藏字段实例
2020/03/31 Python
使用tensorflow进行音乐类型的分类
2020/08/14 Python
李维斯法国官网:Levi’s法国
2019/07/13 全球购物
英语文学专业学生的自我评价
2013/10/31 职场文书
宿舍违规用电检讨书
2014/02/16 职场文书
大学生助学金感谢信
2015/01/21 职场文书
生产车间主任岗位职责
2015/04/08 职场文书
Keras在mnist上的CNN实践,并且自定义loss函数曲线图操作
2021/05/25 Python
详解MySQL的主键查询为什么这么快
2022/04/03 MySQL
解决Oracle数据库用户密码过期
2022/05/11 Oracle