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模拟SQL Server的两个日期处理函数
Oct 09 PHP
不支持fsockopen但支持culr环境下下ucenter与modoer通讯问题
Aug 12 PHP
PHP判断图片格式的七种方法小结
Jun 03 PHP
php中in_array函数用法探究
Nov 25 PHP
PHP的Yii框架中使用数据库的配置和SQL操作实例教程
Mar 17 PHP
php快速排序原理与实现方法分析
May 26 PHP
PHP实现递归目录的5种方法
Oct 27 PHP
thinkPHP分页功能实例详解
May 05 PHP
PHP针对伪静态的注入总结【附asp与Python相关代码】
Aug 01 PHP
PHP安装memcache扩展的步骤讲解
Feb 14 PHP
ThinkPHP中图片按比例切割的代码实例
Mar 08 PHP
在Laravel中实现使用AJAX动态刷新部分页面
Oct 15 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
基于Windows下Apache PHP5.3.1安装教程
2010/01/08 PHP
php class中public,private,protected的区别以及实例分析
2013/06/18 PHP
PHP的mysqli_thread_id()函数讲解
2019/01/24 PHP
PHP7创建销毁session的实例方法
2020/02/03 PHP
HR vs ForZe BO3 第一场 2.13
2021/03/10 DOTA
JavaScript入门教程(2) JS基础知识
2009/01/31 Javascript
JavaScript 继承的实现
2009/07/09 Javascript
jQuery 动态云标签插件
2014/11/11 Javascript
jQuery中die()方法用法实例
2015/01/19 Javascript
Boostrap入门准备之border box
2016/05/09 Javascript
微信小程序 教程之WXML
2016/10/18 Javascript
JavaScript实现的CRC32函数示例
2016/11/23 Javascript
JS实战篇之收缩菜单表单布局
2016/12/10 Javascript
Node.js获取前端ajax提交的request信息
2017/02/20 Javascript
删除table表格行的实例讲解
2017/09/21 Javascript
echarts同一页面中四个图表切换的js数据交互方法示例
2018/07/03 Javascript
使用原生js编写一个简单的框选功能方法
2019/05/13 Javascript
微信小程序如何实现在线客服功能
2019/10/16 Javascript
封装一下vue中的axios示例代码详解
2020/02/16 Javascript
[01:06]DOTA2小知识课堂 Ep.02 吹风竟可解梦境缠绕
2019/12/05 DOTA
python抓取网页时字符集转换问题处理方案分享
2014/06/19 Python
利用python实现逐步回归
2020/02/24 Python
使用CSS3的box-sizing属性解决div宽高被内边距撑开的问题
2016/06/28 HTML / CSS
解析HTML5的存储功能和web SQL的相关操作方法
2016/02/19 HTML / CSS
英国最大的高品质珠宝和手表专家:Goldsmiths
2017/03/11 全球购物
乔丹诺(Giordano)酒庄德国官网:找到最好的意大利葡萄酒
2017/12/28 全球购物
Tiqets英国:智能手机上的文化和娱乐门票
2019/07/10 全球购物
Moss Bros官网:英国排名第一的西装店
2020/02/26 全球购物
办公室主任职责范文
2013/11/08 职场文书
学校节能宣传周活动总结
2014/07/09 职场文书
幽灵公主观后感
2015/06/09 职场文书
酒桌上的祝酒词
2015/08/12 职场文书
致运动员的广播稿
2015/08/19 职场文书
聘任书格式及范文
2015/09/21 职场文书
Python 数据可视化之Bokeh详解
2021/11/02 Python
Python+Selenium自动化环境搭建与操作基础详解
2022/03/13 Python