PHP中把对象数组转换成普通数组的方法


Posted in PHP onJuly 10, 2015

最近在用ThinkPHP开发一个京东服务市场的应用,然而京东服务市场接口返回的数据是个对象数组。然而需要一个个属性取出来放到数组里面然后再利用ThinkPHP的addAll或者add方法写入数据库。然而每次返回的字段有几十个,每次这么拼接都要崩溃了。果然还是那句话,当你感到无法忍受的时候你就会想办法改变。于是想了下,如果有个函数传个对象数组进去可以自动转成普通数组就好了。因而万能的互联网搜索又来了。百度了一通。。。果然有前辈已经处理过了,在此记录一下。

/**

* [std_class_object_to_array 将对象转成数组]

* @param [stdclass] $stdclassobject [对象]

* @return [array] [数组]

*/

function std_class_object_to_array($stdclassobject)

{
$_array = is_object($stdclassobject) ? get_object_vars($stdclassobject) : $stdclassobject;


foreach ($_array as $key => $value) {


$value = (is_array($value) || is_object($value)) ? std_class_object_to_array($value) : $value;


$array[$key] = $value;

}

return $array;

}

就这样,对象数组就优雅地转成了普通的数组。动动脑子,代码量下来了,功能也优雅地就实现了。一举两得,何乐而不为呢?
PHP 相关文章推荐
人大复印资料处理程序_补充篇
Oct 09 PHP
php 实现进制转换(二进制、八进制、十六进制)互相转换实现代码
Oct 22 PHP
PHP文件注释标记及规范小结
Apr 01 PHP
PHP-redis中文文档介绍
Feb 07 PHP
Zend studio文件注释模板设置方法
Sep 29 PHP
thinkphp数据查询和遍历数组实例
Nov 28 PHP
PHP动态规划解决0-1背包问题实例分析
Mar 23 PHP
PHP性能优化大全(php.ini)
May 20 PHP
PHP多维数组指定多字段排序的示例代码
May 16 PHP
PHP实现生成数据字典功能示例
May 24 PHP
php+ajax实现商品对比功能示例
Apr 13 PHP
漂亮的thinkphp 跳转页封装示例
Oct 16 PHP
codeigniter实现get分页的方法
Jul 10 #PHP
PHP基于phpqrcode生成带LOGO图像的二维码实例
Jul 10 #PHP
php基于Snoopy解析网页html的方法
Jul 09 #PHP
php生成固定长度纯数字编码的方法
Jul 09 #PHP
php随机获取金山词霸每日一句的方法
Jul 09 #PHP
PHP实现的QQ空间g_tk加密算法
Jul 09 #PHP
PHP自毁程序(慎用)
Jul 09 #PHP
You might like
简体中文转换为繁体中文的PHP函数
2006/10/09 PHP
php连接mssql的一些相关经验及注意事项
2013/02/05 PHP
Parse正式发布开源PHP SDK
2014/08/11 PHP
PHP多维数组遍历方法(2种实现方法)
2015/12/10 PHP
Zend Framework教程之MVC框架的Controller用法分析
2016/03/07 PHP
php通过smtp邮件验证登陆的方法
2016/05/11 PHP
thinkphp5 migrate数据库迁移工具
2018/02/20 PHP
ThinkPHP中获取指定日期后工作日的具体日期方法
2018/10/14 PHP
如何通过Apache在本地配置多个虚拟主机
2020/07/29 PHP
jQuery News Ticker 基于jQuery的即时新闻行情展示插件
2011/11/05 Javascript
javascript实现十六进制颜色值(HEX)和RGB格式相互转换
2014/06/20 Javascript
在Python中使用glob模块查找文件路径的方法
2015/06/17 Javascript
Node.js数据库操作之查询MySQL数据库(二)
2017/03/04 Javascript
react性能优化达到最大化的方法 immutable.js使用的必要性
2017/03/09 Javascript
微信小程序 wx:for的使用实例详解
2017/04/27 Javascript
详解vue数据渲染出现闪烁问题
2017/06/29 Javascript
基于Proxy的小程序状态管理实现
2019/06/14 Javascript
js之切换全屏和退出全屏实现代码实例
2019/09/09 Javascript
[02:45]DOTA2英雄敌法师基础教程
2013/11/25 DOTA
[03:23:49]2016.12.17日完美“圣”典全回顾
2016/12/19 DOTA
[01:45]典藏宝瓶2+祈求者身心——这就是DOTA2TI9总奖金突破3000万美元的秘密
2019/07/21 DOTA
介绍Python中内置的itertools模块
2015/04/29 Python
使用Python求解最大公约数的实现方法
2015/08/20 Python
python3学习笔记之多进程分布式小例子
2018/02/13 Python
详解Python sys.argv使用方法
2019/05/10 Python
python列表,字典,元组简单用法示例
2019/07/11 Python
pytorch 归一化与反归一化实例
2019/12/31 Python
git查看、创建、删除、本地、远程分支方法详解
2020/02/18 Python
极简鞋类,赤脚的感觉:Lems Shoes
2019/08/06 全球购物
汽车制造与装配专业自荐信范文
2014/01/02 职场文书
教师个人剖析材料
2014/02/05 职场文书
感恩母亲节活动方案
2014/03/04 职场文书
计算机网络专业求职信
2014/06/05 职场文书
Spring整合Mybatis的全过程
2021/06/28 Java/Android
HTML+JS实现在线朗读器
2022/02/15 Javascript
Java中Dijkstra(迪杰斯特拉)算法
2022/05/20 Java/Android