Laravel查询,循环只返回一个结果

时间:2014-06-10 09:13:04

标签: php laravel laravel-4

我试图循环并查询两个值,并获取计数。 Laravel只返回数组中的一个结果。我觉得它曾经做过whereBetween一次,而且没有进一步。这看起来不错吗?

$queryTotals = $users->query();

foreach($times as $k => $v) 
{
    $time_group[$k]['count'] = $queryTotals->whereBetween('join_date', array($v[0], $v[1]))
                                           ->get()
                                           ->count();
}

比较两个值(两个时间戳),并计算该范围之间的成员总数。

1 个答案:

答案 0 :(得分:1)

您的问题似乎是重用查询,您通过使用循环添加whereBetween。要一次又一次地重复使用同一个查询,只需将旧查询复制到一个新变量中,我认为应该这样做。我没有尝试过代码,因为我不知道你以前的变量。

$queryTotals = $users->query();

foreach($times as $k => $v) 
{
    $nq = $queryTotals;
    $time_group[$k]['count'] = $nq->whereBetween('join_date', array($v[0], $v[1]))
                                           ->get()
                                           ->count();
}