Laravel/Eloquent 5 whereBetween 没有按预期工作

Hyd*_*ral 5 php sqlite laravel eloquent

我正在使用 Laravel 5,我想在我的数据库 (SQLite) 中获取两个日期之间的行。

我正在使用这个命令:

$trackers = Tracker::whereBetween('detect_at', [$date1, $date2])->where("serial", "uhu")->get();
Run Code Online (Sandbox Code Playgroud)

但我没有得到任何回应。

整个请求:

$date1 = "2015-07-13 03:53:38";
$date2 = "2015-07-13 03:58:36";
$trackers = Tracker::whereBetween('detect_at', [$date1, $date2])->where("serial", "uhu")->get();
Run Code Online (Sandbox Code Playgroud)

这是我的数据库中一行的示例:

id   serial  latitude   longitude   altitude    accuracy    detect_at                     created_at               updated_at
728  uhu    48.0491     -1.74138    0           20          2015-07-13 03:54:38           2015-07-02 13:40:15         2015-07-02 13:40:15
Run Code Online (Sandbox Code Playgroud)

Ben*_*aar 6

将日期包裹在 Carbon 对象中:

// At top of file
use Carbon\Carbon;

$trackers = Tracker
    ::whereBetween('detect_at', [new Carbon($date1), new Carbon($date2)])
    ->where("serial", "uhu")
    ->get();
Run Code Online (Sandbox Code Playgroud)

  • 我不知道这个答案对你有什么帮助,但它不起作用。 (3认同)