碳的未来奥古斯都

时间:2018-11-20 12:29:25

标签: php-carbon

是否有更漂亮的方法来获取下一个8月1日的完整日期:

$year = date('Y') + 1;
if (date('j') >= 1 && date('j') <= 8) {
    $year = date('Y');
}
$nextAugust = '01-08-' . $year;
$nextAugust = Carbon::createFromFormat('d-m-Y', $nextAugust);

最好使用Carbon PHP

3 个答案:

答案 0 :(得分:1)

下面的代码在八月份发现了碳物体。

$nextAugust = Carbon::parse('first day of August' . (date('n') > 8 ? ' next year' : ''));

我希望我的回答可以帮助您解决问题。

答案 1 :(得分:0)

这可以做到:

$nextAugust = Carbon::createFromFormat('d-m-Y', '01-08-' . (date('Y') + intval(date('m') / 8)));

说明:

您可以用if除以当前月份,而不用8的条件,然后使用intval(date('m') / 8)将结果值转换为整数。这将给您01,并将其添加到当前年份。例如,如果您在三月(即m3),则得到3/8 = 0。因此,明年八月将在同一年,因为2018 + 0将是2018。另一方面,如果您在十月份(即m10),则得到10/8 = 1。因此,明年8月将在明年,因为2018 + 1将是2019。这是您简单实现的方法:

希望有帮助。

答案 2 :(得分:-2)

对我来说,我会这样做:

$date = '01-08-';
$year_now = Carbon::now()->format('Y');
$date = $date.$year_now;
$carbon_date = Carbon::createFromFormat('d-m-Y', $date);

让我知道它是否不起作用。