laravel get或first查出来是对象
问题描述
当我使用 ->get()->toArray();
并没有得到我期望的值,
我打印最外层是数组,可第二层里还是对象,
网上我看也有用 ->get()->map(){
}
利用php map() 函数处理觉得不太好,于是选择自己写一个这样就不用去处理里边的这样不管是->first 还是 ->get()出来的值都是数组,方便做一些后续处理如加字段,
方法如下(建议放在helpers/function.php里):
function objectToArray($object) {
//先编码成json字符串,再解码成数组
return json_decode(json_encode($object), true);
}
查询完记得判断是否为空 ,判段如下 first()
$reData = $data->first();
if(empty($reData) || $reData == NULL)
return [];
else
return objectToArray($reData);
->get();
$reData = $data->get();
if(empty($reData) || $reData == NULL)
return [];
else
return objectToArray($reData);
->paginate() 分页
$reData = $data->paginate($size,['*'],'page',$cur_page);
return objectToArray($reData);
如果写项目时间允许,可以先封装模型,在拉一些自己总结的函数,接着封装一个公共的 控制器 base,这样可以少写很多代码。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律