如何在 Laravel 中检索当前日期的数据

Posted

技术标签:

【中文标题】如何在 Laravel 中检索当前日期的数据【英文标题】:How to retrieve data of current date in Laravel 【发布时间】:2019-07-12 14:35:37 【问题描述】:

我想从我在 Laravel 的数据库中检索今天的数据。

我已经用谷歌搜索并应用了几种方法,但没有得到答案。

PrescriptionTbl::whereDate('created_at', '=', $today)->get();

其中PrescriptionTbl 是模型,today 是当前日期,例如2019-2-19。但是得到了 NULL 数组。

为了检查我使用toSQL()而不是get()的SQL...它在浏览器中显示在SQL下方

 select * from `prescription_tbls` where date(`created_at`) = ?

我也使用了Carbon,但也得到了一个 NULL 数组

PrescriptionTbl::whereDate('created_at', Carbon::today())->get();

如何解决?有人帮忙吗?

【问题讨论】:

你试过PrescriptionTbl::where('created_at', date('Y-m-d H:i:s'))->get(); 吗? FGDeveloper...实际上我想按日期检索数据...这就是为什么不使用H:i:s 你可以使用它; PrescriptionTbl::whereDate('created_at', date('Y-m-d'))->get(); 它对我有用。 你能分享一下fileld使用的日期格式,以便我可以修改我的函数并发布答案,不要忘记添加一些示例日期 FGDeveloper....它根据您的代码工作...请提供答案,然后我会接受您的答案 【参考方案1】:

你可以使用它;

PrescriptionTbl::whereDate('created_at', date('Y-m-d'))->get();

【讨论】:

【参考方案2】:

您可以通过new DateTime()类获取它

PrescriptionTbl::whereDate('created_at', '=', (new DateTime)->format('Y-m-d'))->get();

【讨论】:

【参考方案3】:

使用Carbon(使用Carbon\Carbon;)简单而漂亮

PrescriptionTbl::whereDate('created_at',  Carbon::today()->toDateString())->get();

【讨论】:

【参考方案4】:

你可以试试这个:

PrescriptionTbl::where('created_at', '<=', date('Y-m-d 00:00:00'))->get();

【讨论】:

Sahil Darji....我想按日期检索数据.....在我的数据库中created_at 列格式为DATETIME【参考方案5】:

created_at 是一个时间戳,它是日期/时间格式,因此,除非您提供整个时间戳,否则相等运算符将不起作用。

您可以使用 whereDate 方法来比较日期,仅在 documentation 中提到

PrescriptionTbl::whereDate('created_at', $today)->get();

【讨论】:

它显示select * from prescription_tbls` 其中created_at > ?和created_at = ?` 使用toSql() 后也得到NULL 结果【参考方案6】:

您可以使用whereBetween,其中您可以提供今天的开始日期为2019-01-01 00:00:00,结束日期为2019-01-01 23:59:59

供参考 How to query between two dates using Laravel and Eloquent ORM?

【讨论】:

以上是关于如何在 Laravel 中检索当前日期的数据的主要内容,如果未能解决你的问题,请参考以下文章

从前一个日期检索特定字段

Laravel如何获取当前时间和日期值

在 Laravel 中获取当前日期、时间和日期

React 应用程序使用 Laravel 进行 API 和用户登录。关于从数据库中检索当前登录用户的问题

如何在 laravel php 中使用 ajax 根据日期范围从 mysql 数据库中检索数据?

在android中如何获取当前日期?