使用where从create_at调用数据时出错

时间:2018-03-20 03:42:14

标签: php mysql laravel php-carbon

嘿,所以我试图显示基于用户选择的图表。 它将调用的列来自created_at列,但是当我编写像

这样的代码时



$email = count(DiraResponses::where('company_id', $companyID)->where('created_at', '>=', $request->from)->where('created_at', '<=', $request->to)->where('type', 'email')->where('format', 'email')->get());
&#13;
&#13;
&#13;

它会返回错误 FatalThrowableError in FileSessionHandler.php line 70: Call to undefined method Carbon\Carbon::getTimestamp()

我应该如何解决这个问题?只有在我调用created_at列时才会出现此错误。

2 个答案:

答案 0 :(得分:1)

尝试使用whereDate()函数,同时比较这样的日期。

whereDate('created_at', '>=', $request->from)->whereDate('created_at', '<=', $request->to)

另外,请不要忘记将比较日期格式化为与数据库格式相同的格式,例如

$from = date('Y-m-d' , strtotime($request->from));

然后在查询中传递$

答案 1 :(得分:1)

您可以使用以下语法来计算。

$email = DiraResponses::
    where([['company_id', $companyID],
    ['created_at', '>=', $request->from],
    ['created_at', '<=', $request->to],
    ['type', 'email'],
    ['format', 'email']])
    ->count();