【发布时间】:2021-08-07 14:02:53
【问题描述】:
我需要在我的应用程序中向用户发送生日祝福。
我有一个用户表,其中包含 dateOfBirth 列。我需要一个查询来检索出生日期与今天匹配的用户。
例如,如果用户的 dateOfBirth 值为 1983-08-07,我必须向该用户发送生日祝福。 我使用了下面的代码,但给出的是空值,从这个查询中什么也得不到。
public function today(Request $request)
{
$today = Carbon::now();
$date = today();
$user = user::whereDate('dateOfBirth', $today->day)->whereMonth('dateOfBirth', $today->isoFormat('DD'))->get();
return view('today',compact('user'));
}
提前谢谢你。
【问题讨论】:
-
whereDate 将给定的值转换为 'Y-m-d' 格式...whereDay 将允许您比较日期。看起来您在单独的列中有月份?...也许显示您的表格?
-
dateOfBirth格式为Y-m-d? -
格式化列
dateOfBirth是时间戳? -
dateOfBirth 列的值类似于“1983-08-07”,并且该月没有单独的列。它不是时间戳。谢谢!!
标签: php laravel laravel-5.8