获取在Laravel x分钟前创建的数据

时间:2018-01-02 10:51:01

标签: php laravel

是否有查询,使用PHP date或Carbon来获取x分钟前创建的数据?

在我的例子中,我需要3分钟前创建的所有数据。如果时间是10:00并且数据已创建,则在查询10月10日时,我应该在10:00创建所有数据。如果查询是10点04分,则不返回任何数据。

  

每个答案编辑:返回3分钟前和现在之间创建的所有数据。

use App/Foo
use Carbon\Carbon;

[...]

$three_minutes_ago = Carbon::now()->subMinutes(3)->toDateTimeString();
$foo = Foo::where('created_at', '<', $three_minutes_ago)->get(); // Is this correct?
无论$foo中的数据是什么,

Foo始终为空。我已使用tinker创建/保存数据

2 个答案:

答案 0 :(得分:6)

刚刚测试过,这是一个有效的解决方案:

Foo::whereBetween('created_at', [now()->subMinutes(3), now()])->get()

答案 1 :(得分:0)

我在刀片模板$user->created_at->diffForHumans()中尝试过

您可以阅读更多有关 Carbon Documentation