我得到了一个有很多连接的查询,在哪里,等等。我需要做的是在每个结果集中插入一些数学运算,因为它将提供 csv 导出或显示在页面上。以后甚至可以作为API发回,所以我真正想做的是准备一次数据,然后在任何地方使用它。
$result = DB::table('a')
->join('b')
->where('c')
->orderBy('d')
->select('e');
if ($paginate) {
$query->paginate();
} else {
$query->get();
}
Run Code Online (Sandbox Code Playgroud)
所以问题是,我能否以某种方式迭代我的结果并在得到它们时做一些数学运算?就像每个结果的回调一样?
例如,获取每行中检索到的某些值之间的差异,或添加表示通过/失败的附加行。基本上我想知道是否有更好的做事方式,然后在结果上执行 foreach() 以通过它们,进行数学运算并添加额外的列,从而破坏分页支持并且不得不将结果转换为一个丑陋的数组?