如何按生日算出这个月的退休金
how to get retirement of this month by date of birth
我想按出生日期显示当月退休。我有一列 dob(格式为 1960-12-21)。现在我必须计算从 dob 到当月的 60 年。如果当前月份是 2020 年 10 月 并且出生日期是 1960-09-21 那么应该获取记录。今天的日期并不重要。但是,如果月份是 2020 年 9 月或 2020 年 11 月,则数据不应显示。
如果当前月份已满 60 年,则应按当前月份获取记录。
意味着结果应该是:
本月退休为:abc,xyz等
我试过了,但没有得到结果:
控制器是:
public function index()
{
$retirement = User::select('name','dob')->get();
foreach($retirement as $retirement)
{
echo Carbon::parse($retirement->dob)->age;
}
}
只显示年份。
使用 whereMonth()
和 whereYear()
查找当前月份和 60 年前的年份。您可以通过获取 now()
然后分别访问 month
和 year
属性来实现。
$retirement = User::whereMonth('dob', now()->month)
->whereYear('dob', now()->subYears(60)->year)
->get();
我想按出生日期显示当月退休。我有一列 dob(格式为 1960-12-21)。现在我必须计算从 dob 到当月的 60 年。如果当前月份是 2020 年 10 月 并且出生日期是 1960-09-21 那么应该获取记录。今天的日期并不重要。但是,如果月份是 2020 年 9 月或 2020 年 11 月,则数据不应显示。
如果当前月份已满 60 年,则应按当前月份获取记录。
意味着结果应该是:
本月退休为:abc,xyz等
我试过了,但没有得到结果:
控制器是:
public function index()
{
$retirement = User::select('name','dob')->get();
foreach($retirement as $retirement)
{
echo Carbon::parse($retirement->dob)->age;
}
}
只显示年份。
使用 whereMonth()
和 whereYear()
查找当前月份和 60 年前的年份。您可以通过获取 now()
然后分别访问 month
和 year
属性来实现。
$retirement = User::whereMonth('dob', now()->month)
->whereYear('dob', now()->subYears(60)->year)
->get();