与 laravel 4.2 的日期比较
date comparision with laravel 4.2
我想获取超过 2 天的记录。
我当前的 added_to_cart_at
字段的数据库记录只有一行 2016-05-01 12:23:23
我使用了下面的代码
$date = new DateTime;
$date->modify('-2 days');
$formatted_date = $date->format('Y-m-d H:i:s');
echo $formatted_date; // prints 2016-04-29 14:27:42
$result = DB::table('cart_reminder')->whereDate('added_to_cart_at','<=',$formatted_date)->get();
foreach ($result as $row)
{
echo $row->user_email;
}
理想情况下 where
以上条件应该失败并且应该 return 0 条记录。但它获取了一个记录。
已编辑:
$result = DB::table('cart_reminder')->whereDate(\Carbon\Carbon::now()->subDays(2)->toDateString())->get();
foreach ($result as $row)
{
echo $row->user_email;
}
它打印错误
production.ERROR: exception 'ErrorException' with message 'Missing argument 2 for Illuminate\Database\Query\Builder::whereDate(), called in
为什么?
您没有指定列。
whereDate('added_to_cart_at', $carbon)
我想获取超过 2 天的记录。
我当前的 added_to_cart_at
字段的数据库记录只有一行 2016-05-01 12:23:23
我使用了下面的代码
$date = new DateTime;
$date->modify('-2 days');
$formatted_date = $date->format('Y-m-d H:i:s');
echo $formatted_date; // prints 2016-04-29 14:27:42
$result = DB::table('cart_reminder')->whereDate('added_to_cart_at','<=',$formatted_date)->get();
foreach ($result as $row)
{
echo $row->user_email;
}
理想情况下 where
以上条件应该失败并且应该 return 0 条记录。但它获取了一个记录。
已编辑:
$result = DB::table('cart_reminder')->whereDate(\Carbon\Carbon::now()->subDays(2)->toDateString())->get();
foreach ($result as $row)
{
echo $row->user_email;
}
它打印错误
production.ERROR: exception 'ErrorException' with message 'Missing argument 2 for Illuminate\Database\Query\Builder::whereDate(), called in
为什么?
您没有指定列。
whereDate('added_to_cart_at', $carbon)