日期再加上一个月的php

6 php date

我在PHP中的日期有一个小问题.

当我使用此代码制作1月31 + 1月份时

$newDate = date('Y-m-d', strtotime('31-01-2016'.' + 1 month'));
echo $newDate;
Run Code Online (Sandbox Code Playgroud)

它给了我3月2日,但我需要在2月29日给我,

我需要加1个月而不是30天.

同上所有日期:例如01月1日+ 1个月=> 1月2日

1月29日+ 1个月=> 29月2日

1月30日+ 1个月=> 2月29日

1月31日+ 1个月=> 2月29日

谢谢您帮忙

Nik*_*aut 8

我想你正在寻找这种类型的约会.

<?php
    $date = date('2016-01-31');
    $currentMonth = date("m",strtotime($date));
    $nextMonth = date("m",strtotime($date."+1 month"));
    if($currentMonth==$nextMonth-1){
        $nextDate = date('Y-m-d',strtotime($date." +1 month"));
    }else{
        $nextDate = date('Y-m-d', strtotime("last day of next month",strtotime($date)));
    }
    echo "Next date would be : $nextDate";
?>
Run Code Online (Sandbox Code Playgroud)

查看现场演示:https://eval.in/610034

  1. 如果日期是,31-01-2016那么下一个日期将是29-02-2016
  2. 如果日期是,25-01-2016那么下一个日期将是25-02-2016