如何从PHP和MySQL数据库中获取与当前日期相等的日期?

问题描述:

在我的表,我有一个名为created_at字段的数据类型timestamp和值都像2016-12-30 00:30:10等。如何从PHP和MySQL数据库中获取与当前日期相等的日期?

我的查询中,我得到的所有通过简单的select *声明的。

我怎样才能得到只有日期,它等于今天的日期?

我使用了一个名为makoframework框架和查询生成器是这样的:

$data = $query->table('customers') 
->where('created_at', '=', //date today) 
->all(); 

任何帮助将非常感激。

+0

使用DATE(created_at)希望它会工作。 – Sona

+0

它说DATE(created_at)列未找到@SoniyaReddy – FewFlyBy

尝试

->where('DATE(created_at)', '=', '2016-12-30') 

我敢肯定,有关查询,但我不使用框架,所以我不知道是否会在传递到MySQL,因为它是。

使用此为您的框架

->whereRaw('DATE(created_at)', '=', '2016-12-30') 
+0

'DATE(created_at)'被列为列 – FewFlyBy

+0

这很好mysql会知道如何处理它 –

+0

我得到这个列未找到:1054未知列'日期ph.created_at)'in'where clause' – FewFlyBy

这将工作

WHERE DATE(created_at)= CURDATE()

我不知道你正在使用,但在核心PHP哪个框架您可以使用date()函数以特定格式打印当前日期。

$data = $query->table('customers') 
     ->where('DATE(created_at)', '=', date('Y-m-d')) 
     ->all(); 

所以,我打开了框架的GitHub的网站的问题,正确的方法,其工作是这样的:

$now = date('Y-m-d'); 
->where(new Raw('Date(ph.created_at)'), '=', $now) 

只要记住进口mako\database\query\Raw

感谢所有帮助。