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 相关文章推荐
PHP 图片水印类代码
Aug 27 PHP
php全局变量和类配合使用深刻理解
Jun 05 PHP
新手菜鸟必读:session与cookie的区别
Aug 22 PHP
PHP内存缓存Memcached类实例
Dec 08 PHP
Linux操作系统安装LAMP环境
Jun 26 PHP
Laravel中Trait的用法实例详解
Mar 16 PHP
Yii2 GridView实现列表页直接修改数据的方法
May 16 PHP
smarty的section嵌套循环用法示例
May 28 PHP
PHP实现十进制、二进制、八进制和十六进制转换相关函数用法分析
Apr 25 PHP
可兼容php5与php7的cURL文件上传功能实例分析
May 11 PHP
Yii2框架操作数据库的方法分析【以mysql为例】
May 27 PHP
关于laravel5.5的定时任务详解(demo)
Oct 23 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与javascript的两种交互方式
2006/10/09 PHP
PHP CodeIgniter框架的工作原理研究
2015/03/30 PHP
PHP使用逆波兰式计算工资的方法
2015/07/29 PHP
thinkPHP5.0框架自动加载机制分析
2017/03/18 PHP
实例讲解PHP中使用命名空间
2019/01/27 PHP
Jquery Ajax学习实例 向页面发出请求,返回XML格式数据
2010/03/14 Javascript
javascript模拟实现C# String.format函数功能代码
2013/11/25 Javascript
JS+CSS实现可拖拽的漂亮圆角特效弹出层完整实例
2015/02/13 Javascript
JavaScript取得键盘按下方向键是哪个的方法
2015/08/04 Javascript
jQuery实现的放大镜效果示例
2016/09/13 Javascript
JS中数组重排序方法
2016/11/11 Javascript
JavaScript的兼容性与调试技巧
2016/11/22 Javascript
利用JavaScript对中文(汉字)进行排序实例详解
2017/06/18 Javascript
vue利用better-scroll实现轮播图与页面滚动详解
2017/10/20 Javascript
使用vue-cli导入Element UI组件的方法
2018/05/16 Javascript
vue-cli3搭建项目的详细步骤
2018/12/05 Javascript
Makefile/cmake/node-gyp中区分判断不同平台的方法
2018/12/18 Javascript
原生JS检测CSS3动画是否结束的方法详解
2019/01/27 Javascript
vue下canvas裁剪图片实例讲解
2020/04/16 Javascript
jquery简易手风琴插件的封装
2020/10/13 jQuery
python控制台英汉汉英电子词典
2020/04/23 Python
wxpython中自定义事件的实现与使用方法分析
2016/07/21 Python
由浅入深讲解python中的yield与generator
2017/04/05 Python
利用python写个下载teahour音频的小脚本
2017/05/08 Python
python中sys.argv函数精简概括
2018/07/08 Python
anaconda如何查看并管理python环境
2019/07/05 Python
利用ImageAI库只需几行python代码实现目标检测
2019/08/09 Python
Python Collatz序列实现过程解析
2019/10/12 Python
python如何实现复制目录到指定目录
2020/02/13 Python
Gap中国官网:美式休闲风服饰
2017/02/05 全球购物
意大利奢华内衣制造商:Cosabella
2017/08/29 全球购物
运动会入场词200字
2014/02/15 职场文书
秋季校运动会广播稿
2014/02/23 职场文书
企业精细化管理实施方案
2014/03/23 职场文书
光学与应用专业毕业生求职信
2014/09/01 职场文书
使用Redis做预定库存缓存功能
2022/04/02 Redis