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
Apache, PHP在Windows 9x/NT下的安装与配置 (二)
Oct 09 PHP
PHP 数组实例说明
Aug 18 PHP
php操作sqlserver关于时间日期读取的小小见解
Nov 29 PHP
两千行代码的PHP学习笔记汇总
Oct 05 PHP
php+mysqli批量查询多张表数据的方法
Jan 29 PHP
分享一个Laravel好用的Cache宏
Mar 02 PHP
zend framework中使用memcache的方法
Mar 04 PHP
php获取远程图片并下载保存到本地的方法分析
Oct 08 PHP
PHP获取本周所有日期或者最近七天所有日期的方法
Jun 20 PHP
Laravel validate error处理,ajax,json示例
Oct 25 PHP
PHP实现获取文件mime类型多种方法解析
May 28 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生成自己的LOG文件
2006/10/09 PHP
PHP脚本的10个技巧(5)
2006/10/09 PHP
PR值查询 | PageRank 查询
2006/12/20 PHP
PHP+AJAX实现投票功能的方法
2015/09/28 PHP
非常重要的php正则表达式详解
2016/01/04 PHP
CSS+Jquery实现页面圆角框方法大全
2009/12/24 Javascript
Javascript开发之三数组对象实例介绍
2012/11/12 Javascript
jquery each的几种常用的使用方法示例
2014/01/21 Javascript
nodejs实现bigpipe异步加载页面方案
2016/01/26 NodeJs
javascript解析ajax返回的xml和json格式数据实例详解
2017/01/05 Javascript
JavaScript中最常见的三个面试题解析
2017/03/04 Javascript
jQuery pager.js 插件动态分页功能实例分析
2019/08/02 jQuery
JS错误处理与调试操作实例分析
2020/04/13 Javascript
vue2.x 对象劫持的原理实现
2020/04/19 Javascript
keep-alive保持组件状态的方法
2020/12/02 Javascript
基于VUE实现简单的学生信息管理系统
2021/01/13 Vue.js
python实现进程间通信简单实例
2014/07/23 Python
python Pandas 读取txt表格的实例
2018/04/29 Python
使用tensorflow实现线性svm
2018/09/07 Python
python 将列表中的字符串连接成一个长路径的方法
2018/10/23 Python
python快速排序的实现及运行时间比较
2019/11/22 Python
MoviePy常用剪辑类及Python视频剪辑自动化
2020/12/18 Python
HTML5中的进度条progress元素简介及兼容性处理
2016/06/02 HTML / CSS
韩国邮政旗下生鲜食品网上超市:epost
2016/08/27 全球购物
瑞典度假品牌:OAS
2019/05/28 全球购物
德国家具折扣店:POCO
2020/02/28 全球购物
请说出以下代码输出什么
2013/08/30 面试题
仓库管理制度
2014/01/21 职场文书
梅花魂教学反思
2014/04/25 职场文书
企业宣传口号
2014/06/12 职场文书
学校领导班子对照检查材料
2014/08/28 职场文书
《日月潭》教学反思
2016/02/20 职场文书
JavaScript继承的三种方法实例
2021/05/12 Javascript
Java实现二分搜索树的示例代码
2022/03/17 Java/Android
python井字棋游戏实现人机对战
2022/04/28 Python
2022微信温控新功能上线
2022/05/09 数码科技