将时间戳更改为下个月并保持日期不变

时间:2014-08-21 07:18:26

标签: php datetime

如果保存在表格1403222400中的日期,即06/19/2014(m / d / y格式),我想更改保存在数据库中的日期

我想将月份更改为下个月(8月7月becoz 7月已经完成),但希望保持日期相同。 我尝试过使用

$ NextPaymentDate = strtotime(' +1个月',' 140322240');

我已尝试使用此功能,但它会在时间戳上添加一个月,但可能有可能已添加的一个月已完成,因此我想添加即将到来的月份和日期。

任何人都可以帮助我吗?如何迎接下一个月?

-------------------更新代码---------------

FORMAT="m/d/Y";
       $newPaymentDate=date(FORMAT,"1401926400"); 
            $date = new DATETIME($newPaymentDate);      
                $NextPaymentDate = $date->modify("+1 year");
                      $year = date("Y");
                      $NextPaymentDate = $date->format("m/d/".$year );
                      if(strtotime('now') > strtotime($NextPaymentDate))
                       {
                      $new_date = new DATETIME($NextPaymentDate);
                     $NextPaymentDate = $new_date->modify("+1 year");
                      $NextPaymentDate = $new_date->format(FORMAT);
         }

1 个答案:

答案 0 :(得分:0)

首先将int转换为日期格式......使用

$new=date('Y-m-d',1403222400);
    $date = new DATETIME($new);
    $NextPaymentDate = $date->modify("+1 month");
    $n =date("m");
    $NextPaymentDate = $date->format("Y-".$n."-d");
    $today = date("Y-m-d");
    if(strtotime($today) > strtotime($NextPaymentDate))
    {
        $new_date = new DATETIME($NextPaymentDate);
        $NextPaymentDate = $new_date->modify("+1 month");
        $NextPaymentDate = $new_date->format("Y-m-d");
    }

希望这会有所帮助:)