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持久连接mysql_pconnect()函数使用介绍
Feb 05 PHP
php常用Output和ptions/Info函数集介绍
Jun 19 PHP
php实现过滤字符串中的中文和数字实例
Jul 29 PHP
php猜单词游戏
Sep 29 PHP
php实现阳历阴历互转的方法
Oct 28 PHP
php处理单文件、多文件上传代码分享
Aug 24 PHP
php getcwd与dirname(__FILE__)区别详解
Sep 24 PHP
PHP对称加密函数实现数据的加密解密
Oct 27 PHP
浅谈thinkphp5 instance 的简单实现
Jul 30 PHP
PHP基于MySQLI函数封装的数据库连接工具类【定义与用法】
Aug 11 PHP
PHP简单实现模拟登陆功能示例
Sep 15 PHP
PHP ElasticSearch做搜索实例讲解
Feb 05 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手册及PHP编程标准
2006/12/17 PHP
PHP 强制下载文件代码
2010/10/24 PHP
PHP中计算字符串相似度的函数代码
2012/12/29 PHP
php中__destruct与register_shutdown_function执行的先后顺序问题
2014/10/17 PHP
php获取根域名方法汇总
2014/10/28 PHP
Yii 2.0自带的验证码使用经验分享
2017/06/19 PHP
用JavaScript和注册表脚本实现右键收藏Web页选中文本
2007/01/28 Javascript
JavaScript中this关键字使用方法详解
2007/03/08 Javascript
xml 与javascript结合的问题解决方法
2007/03/24 Javascript
javascript 数组排序函数
2009/08/20 Javascript
Dreamweaver jQuery智能提示插件,支持版本提示,支持1.6api
2011/07/31 Javascript
使用js+jquery实现无限极联动
2013/05/23 Javascript
简述JavaScript提交表单的方式 (Using JavaScript Submit Form)
2016/03/18 Javascript
Windows安装Node.js报错:2503、2502的解决方法
2017/10/25 Javascript
vuex提交state&amp;&amp;实时监听state数据的改变方法
2018/09/16 Javascript
微信小程序 select 下拉框组件功能
2019/09/09 Javascript
JavaScript oncopy事件用法实例解析
2020/05/13 Javascript
原生js实现简单轮播图
2020/10/26 Javascript
Nuxt的路由动画效果案例
2020/11/06 Javascript
[02:36]DOTA2英雄基础教程 一击致命幻影刺客
2013/12/06 DOTA
Python 检查数组元素是否存在类似PHP isset()方法
2014/10/14 Python
Python实现保证只能运行一个脚本实例
2015/06/24 Python
Python聚类算法之凝聚层次聚类实例分析
2015/11/20 Python
Python数据结构与算法之字典树实现方法示例
2017/12/13 Python
Django中针对基于类的视图添加csrf_exempt实例代码
2018/02/11 Python
如何优雅地改进Django中的模板碎片缓存详解
2018/07/04 Python
在PyTorch中Tensor的查找和筛选例子
2019/08/18 Python
FFT快速傅里叶变换的python实现过程解析
2019/10/21 Python
使用python模拟高斯分布例子
2019/12/09 Python
Python使用urllib模块对URL网址中的中文编码与解码实例详解
2020/02/18 Python
Python学习之os模块及用法
2020/06/03 Python
护理学专业推荐信
2013/12/03 职场文书
80后职场人的职业生涯规划
2014/03/08 职场文书
中学生秋季运动会广播稿
2014/09/21 职场文书
Python selenium绕过webdriver监测执行javascript
2022/04/12 Python
mysql中关键词exists的用法实例详解
2022/06/10 MySQL