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 相关文章推荐
echo(),print(),print_r()之间的区别?
Nov 19 PHP
php代码把全角数字转为半角数字
Dec 10 PHP
php调用c接口无错版介绍
Mar 11 PHP
自定义min版smarty模板引擎MinSmarty.class.php文件及用法
May 20 PHP
PHP生成静态HTML文档实现代码
Jun 23 PHP
浅谈Yii乐观锁的使用及原理
Jul 25 PHP
基于PHP-FPM进程池探秘
Oct 17 PHP
thinkphp3.2同时连接两个数据库的简单方法
Aug 13 PHP
PHP使用phpunit进行单元测试示例
Sep 23 PHP
关于laravel-admin ueditor 集成并解决刷新的问题
Oct 21 PHP
基于PHP+Mysql简单实现了图书购物车系统的实例详解
Aug 06 PHP
TP - 比RBAC更好的权限认证方式(Auth类认证)
Mar 09 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
苏联队长,苏联超人蝙蝠侠,这些登场的“山寨”英雄真的很严肃
2020/04/09 欧美动漫
社区(php&amp;&amp;mysql)三
2006/10/09 PHP
PHP 向右侧拉菜单实现代码,测试使用中
2009/11/03 PHP
PHP XML操作的各种方法解析(比较详细)
2010/06/17 PHP
phpize的深入理解
2013/06/03 PHP
Codeigniter实现处理用户登录验证后的URL跳转
2014/06/12 PHP
2个Codeigniter文件批量上传控制器写法例子
2014/07/25 PHP
php中mt_rand()随机数函数用法
2014/11/24 PHP
如何使用PHP给图片加水印
2016/10/12 PHP
ppk谈JavaScript style属性
2008/10/10 Javascript
js实时获取系统当前时间实例代码
2013/06/28 Javascript
js原生appendChild的bug解决心得分享
2013/07/01 Javascript
js实现滚动条滚动到某个位置便自动定位某个tr
2021/01/20 Javascript
javascript中sort排序实例详解
2016/07/24 Javascript
angularjs路由传值$routeParams详解
2020/09/05 Javascript
深入浅析Vue全局组件与局部组件的区别
2018/06/15 Javascript
详解Vue源码学习之双向绑定
2019/04/10 Javascript
JS实现秒杀倒计时特效
2020/01/02 Javascript
Vue为什么要谨慎使用$attrs与$listeners
2020/08/27 Javascript
JavaScript实现弹出窗口效果
2020/12/09 Javascript
pycharm 将django中多个app放到同个文件夹apps的处理方法
2018/05/30 Python
python机器学习实现决策树
2019/11/11 Python
一个非常简单好用的Python图形界面库(PysimpleGUI)
2020/12/28 Python
使用CSS3设计地图上的雷达定位提示效果
2016/04/05 HTML / CSS
前端实现背景虚化但内容清晰且自适应 的实例代码
2019/08/01 HTML / CSS
任意存:BOXFUL
2018/05/21 全球购物
我们没有写servlet的构造方法,那么容器是怎么创建servlet的实例呢
2013/04/24 面试题
加油口号大全
2014/06/13 职场文书
2015年护理工作总结范文
2015/04/03 职场文书
辩论赛新闻稿
2015/07/17 职场文书
2015年中秋晚会主持稿
2015/07/30 职场文书
2019年年中职场激励人心语录30条
2019/08/07 职场文书
MySQL修炼之联结与集合浅析
2021/10/05 MySQL
AJAX实现省市县三级联动效果
2021/10/16 Javascript
如何利用Python实现n*n螺旋矩阵
2022/01/18 Python
Nginx配置之禁止指定IP访问
2022/05/02 Servers