PHP数组与对象之间使用递归实现转换的方法


Posted in PHP onJune 24, 2015

本文实例讲述了PHP数组与对象之间使用递归实现转换的方法。分享给大家供大家参考。具体实现方法如下:

这里涉及一些简单的对象与数组的相互转换的问题,采用递归写了两个方法如下:

function arrayToObject($e){  
   if( gettype($e)!='array' ) return;
   foreach($e as $k=>$v){
     if( gettype($v)=='array' || getType($v)=='object' )
        $e[$k]=(object)arrayToObject($v);
   }
    return (object)$e;
}
function objectToArray($e){
  $e=(array)$e;
  foreach($e as $k=>$v){
    if( gettype($v)=='resource' ) return;
    if( gettype($v)=='object' || gettype($v)=='array' )
      $e[$k]=(array)objectToArray($v);
  }
  return $e;
}
function object_to_array($e) { 
  $_arr = is_object($e) ? get_object_vars($e) : $e; 
  foreach ($_arr as $key => $val) { 
    $val = (is_array($val) || is_object($val)) ? object_to_array($val) : $val; 
    $arr[$key] = $val; 
  } 
  return $arr; 
}

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
修改php.ini实现Mysql导入数据库文件最大限制的修改方法
Dec 11 PHP
深思 PHP 数组遍历的差异(array_diff 的实现)
Mar 23 PHP
php实现网站插件机制的方法
Nov 10 PHP
PHP常用数组函数介绍
Jul 28 PHP
非常实用的PHP常用函数汇总
Dec 17 PHP
8个必备的PHP功能开发
Oct 02 PHP
php自定义扩展名获取函数示例
Dec 12 PHP
PHP实现随机生成水印图片功能
Mar 22 PHP
PHP中的正则表达式实例详解
Apr 25 PHP
创建无限极分类树型结构的简单方法
Jun 20 PHP
PHP与JavaScript针对Cookie的读写、交互操作方法详解
Aug 07 PHP
tp5(thinkPHP5框架)时间查询操作实例分析
May 29 PHP
php计算多维数组中所有值总和的方法
Jun 24 #PHP
jquery获取多个checkbox的值异步提交给php的方法
Jun 24 #PHP
PHP将Excel导入数据库及数据库数据导出至Excel的方法
Jun 24 #PHP
php异常处理方法实例汇总
Jun 24 #PHP
php数组索引与键值操作技巧实例分析
Jun 24 #PHP
PHP实现在线阅读PDF文件的方法
Jun 23 #PHP
php中header设置常见文件类型的content-type
Jun 23 #PHP
You might like
PHP和Shell实现检查SAMBA与NFS Server是否存在
2015/01/07 PHP
CodeIgniter分页类pagination使用方法示例
2016/03/28 PHP
Yii框架中jquery表单验证插件用法示例
2016/10/18 PHP
关于PHP虚拟主机概念及如何选择稳定的PHP虚拟主机
2018/11/20 PHP
Javascript 中介者模式实例
2009/12/16 Javascript
自己做的模拟模态对话框实现代码
2012/05/23 Javascript
理解js对象继承的N种模式
2016/01/25 Javascript
你不知道的 javascript【推荐】
2017/01/08 Javascript
nodeJs链接Mysql做增删改查的简单操作
2017/02/04 NodeJs
详解create-react-app 自定义 eslint 配置
2018/06/07 Javascript
vue实现可视化可拖放的自定义表单的示例代码
2019/03/20 Javascript
node.js 基于cheerio的爬虫工具的实现(需要登录权限的爬虫工具)
2019/04/10 Javascript
Vue-input框checkbox强制刷新问题
2019/04/18 Javascript
Vue中jsx不完全应用指南小结
2019/11/01 Javascript
vue+node 实现视频在线播放的实例代码
2020/10/19 Javascript
python中正则表达式的使用详解
2014/10/17 Python
Tensorflow 训练自己的数据集将数据直接导入到内存
2018/06/19 Python
python利用pandas将excel文件转换为txt文件的方法
2018/10/23 Python
Python之循环结构
2019/01/15 Python
如何使用Python标准库进行性能测试
2019/06/25 Python
Python with语句和过程抽取思想
2019/12/23 Python
浅谈对pytroch中torch.autograd.backward的思考
2019/12/27 Python
一文了解python 3 字符串格式化 F-string 用法
2020/03/04 Python
解决Python3.7.0 SSL低版本导致Pip无法使用问题
2020/09/03 Python
python获得命令行输入的参数的两种方式
2020/11/02 Python
基于Html5实现的语音搜索功能
2019/05/13 HTML / CSS
Vision Directa智利眼镜网:框架眼镜、隐形眼镜和名牌太阳眼镜
2016/11/23 全球购物
单位门卫岗位职责
2013/12/20 职场文书
法律专业学生的自我评价
2014/02/07 职场文书
幼儿园运动会口号
2014/06/07 职场文书
工作骂脏话检讨书
2014/10/05 职场文书
2014年幼儿园园务工作总结
2014/12/05 职场文书
满月酒邀请函
2015/01/30 职场文书
个人学习总结范文
2015/02/15 职场文书
年会主持人开场白台词
2015/05/29 职场文书
HTML实现仿Windows桌面主题特效的实现
2022/06/28 HTML / CSS