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中操作MySQL数据库的一些要注意的问题
Oct 09 PHP
php下实现农历日历的代码
Mar 07 PHP
PHP 采集获取指定网址的内容
Jan 05 PHP
php数组函数序列之in_array() 查找数组值是否存在
Oct 29 PHP
PHP使用get_headers函数判断远程文件是否存在的方法
Nov 28 PHP
php实现在站点里面添加邮件发送的功能
Apr 28 PHP
用php和jQuery来实现“顶”和“踩”的投票功能
Oct 13 PHP
详解thinkphp实现excel数据的导入导出(附完整案例)
Dec 29 PHP
ThinkPHP中create()方法自动验证表单信息
Apr 28 PHP
PHP使用xpath解析XML的方法详解
May 20 PHP
PHP实现的简单对称加密与解密方法实例小结
Aug 28 PHP
PHP使用HTML5 FileApi实现Ajax上传文件功能示例
Jul 01 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中文字符截取防乱码
2008/03/28 PHP
PHP中使用sleep造成mysql读取失败的案例和解决方法
2014/08/21 PHP
MacOS 安装 PHP的图片裁剪扩展Tclip
2015/03/25 PHP
Yii2中Restful API原理实例分析
2016/07/25 PHP
PHP pthreads v3使用中的一些坑和注意点分析
2020/02/21 PHP
javascript中最常用的继承模式 组合继承
2010/08/12 Javascript
高效的表格行背景隔行变色及选定高亮的JS代码
2010/12/04 Javascript
javascript游戏开发之《三国志曹操传》零部件开发(二)人物行走的实现
2013/01/23 Javascript
JavaScript的继承的封装介绍
2013/10/15 Javascript
javascript中数组方法汇总
2015/07/07 Javascript
javascript常用函数(1)
2015/11/04 Javascript
jQuery中serializeArray()与serialize()的区别实例分析
2015/12/09 Javascript
浅谈JavaScript 浏览器对象
2016/06/03 Javascript
解析javascript图片懒加载与预加载的分析总结
2016/10/27 Javascript
jQuery自定义插件详解及实例代码
2016/12/29 Javascript
Vue.js进行查询操作的实例详解
2017/08/25 Javascript
Vue中使用webpack别名的方法实例详解
2018/06/19 Javascript
jQuery实现颜色打字机的完整代码
2020/03/19 jQuery
js+css实现全屏侧边栏
2020/06/16 Javascript
使用js原生实现年份轮播选择效果实例
2021/01/12 Javascript
python操作CouchDB的方法
2014/10/08 Python
Python实用日期时间处理方法汇总
2015/05/09 Python
对Python中小整数对象池和大整数对象池的使用详解
2019/07/09 Python
Pytorch使用MNIST数据集实现基础GAN和DCGAN详解
2020/01/10 Python
python如何求圆的面积
2020/07/01 Python
python实现将中文日期转换为数字日期
2020/07/14 Python
python实现跨年表白神器--你值得拥有
2021/01/04 Python
基于HTML5+CSS3实现简单的时钟效果
2017/09/11 HTML / CSS
深圳-东方伟业笔试部分
2015/02/11 面试题
密封类可以有虚函数吗
2014/08/11 面试题
教师师德教育的自我评价
2013/10/31 职场文书
法人授权委托书范本
2014/04/04 职场文书
应届毕业生求职信
2014/05/26 职场文书
幼儿教师小班个人总结
2015/02/05 职场文书
消防安全主题班会
2015/08/12 职场文书
一文搞懂Python Sklearn库使用
2021/08/23 Python