为什么查询日期会在 laravel 中提供错误的输出/结果

uploaded_at在数据库中有一个类型为时间戳的列。

$from = date("d-m-Y", strtotime("-2 months"));
$data = Post::where('uploaded_at' , '>' , $from)->paginate(20);

这段代码提供了 post 表中的所有数据,我只需要过去 2 个月的帖子。


慕哥9229398
浏览 137回答 3
3回答

有只小跳蛙

试试这个代码$from = date("Y-m-d", strtotime("-2 months")); $data = Post::whereDate('uploaded_at' , '>=' , $from)->paginate(20);

忽然笑

Laravel 有一个默认的包,名为Carbonwhich 可以轻松处理此操作,如下所示:$date = Carbon::now();$previous = $date->subMonths(2);$data =Post::whereBetween('uploaded_at', [$previous, $date])->paginate(20);不要忘记use Carbon\Carbon;在顶部。希望这可以帮助..

白板的微信

使用whereDate()函数比较日期:$data = Post::whereDate('uploaded_at' , '>' , $from)->paginate(20);
打开App,查看更多内容
随时随地看视频慕课网APP