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入门速成(2)
Oct 09 PHP
thinkphp3.0 模板中函数的使用
Nov 13 PHP
php 发送带附件邮件示例
Jan 23 PHP
PHP的cURL库简介及使用示例
Feb 06 PHP
PHP中使用BigMap实例
Mar 30 PHP
Codeigniter的dom类用法实例
Jun 26 PHP
yii分页组件用法实例分析
Dec 28 PHP
thinkphp跨库操作的简单代码实例
Sep 22 PHP
PHP弱类型的安全问题详细总结
Sep 25 PHP
PHP读取文本文件并逐行输出该行使用最多的字符与对应次数的方法
Nov 25 PHP
详解Yii实现分页的两种方法
Jan 14 PHP
PHP调用Mailgun发送邮件的方法
May 04 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
蝙蝠侠:侠影之谜
2020/03/04 欧美动漫
ThinkPHP中U方法的使用浅析
2014/06/13 PHP
PHP中header函数的用法及其注意事项详解
2016/06/13 PHP
PHP从尾到头打印链表实例讲解
2018/09/27 PHP
phpstudy2020搭建站点的实现示例
2020/10/30 PHP
Javascript实现的分页函数
2007/02/07 Javascript
为超链接加上disabled后的故事
2010/12/10 Javascript
JavaScript高级程序设计阅读笔记(五) ECMAScript中的运算符(一)
2012/02/27 Javascript
基于jQuery捕获超链接事件进行局部刷新代码
2012/05/10 Javascript
js+html+css实现鼠标移动div实例
2013/01/30 Javascript
一个JavaScript操作元素定位元素的实例
2014/10/29 Javascript
聊一聊jQuery插件uploadify使用方法
2016/08/24 Javascript
购物车前端开发(jQuery和bootstrap3)
2016/08/27 Javascript
headjs实现网站并行加载但顺序执行JS
2016/11/29 Javascript
关于Ajax的原理以及代码封装详解
2017/09/08 Javascript
jQuery简单实现根据日期计算星期几的方法
2019/01/09 jQuery
Vue.js + Nuxt.js 项目中使用 Vee-validate 表单校验
2019/04/22 Javascript
taro小程序添加骨架屏的实现代码
2019/11/15 Javascript
Python查看多台服务器进程的脚本分享
2014/06/11 Python
Python 网页解析HTMLParse的实例详解
2017/08/10 Python
python的re正则表达式实例代码
2018/01/24 Python
利用Pandas和Numpy按时间戳将数据以Groupby方式分组
2019/07/22 Python
关于初始种子自动选取的区域生长实例(python+opencv)
2020/01/16 Python
Django模板之基本的 for 循环 和 List内容的显示方式
2020/03/31 Python
Python运行提示缺少模块问题解决方案
2020/04/02 Python
python 实现围棋游戏(纯tkinter gui)
2020/11/13 Python
CSS3+DIV实现漂亮的动画彩色标签
2016/06/16 HTML / CSS
小米乌克兰网上商店:Xiaomi.UA
2019/10/29 全球购物
2014年教师节寄语
2014/04/03 职场文书
党风廉政建设责任书
2014/04/14 职场文书
社区活动总结
2015/02/04 职场文书
小学安全工作总结2015
2015/05/18 职场文书
消费者理赔投诉书
2015/07/02 职场文书
小学作文指导之如何写人?
2019/07/08 职场文书
创业计划书之酒店
2019/08/30 职场文书
如何搭建 MySQL 高可用高性能集群
2021/06/21 MySQL