2013-03-04 85 views
-2
$start_date = "2012-01-05"; 
$end_date = "2012-02-10"; 

如何獲得一個月並獲得一個月日後想在上面的例子中獲取日期加一個月後,離開上述天

$end_date應該「2012-02-05」; 5天以上離開。不要算上一天。

我該如何在PHP中做到這一點?

我wan't喜歡

$month = 1; 
$end_date = "2012-02-05"; 

第二個例子

$start_date = "2012-06-19"; 
$end_date = "2012-09-25"; 

則應之間

$month = 3; 
$end_date = "2012-09-19"; 

休假天數 「2012-09-19」 到「2012-09 -25" 。

感謝

+1

你應該查找任何一種語言,你的日期,日期時間操作函數每個好的語言都有一種方法可以根據年份和月份等特定參數來構建日期,並且可以安全地增加月份/遞減月份/遞增日期等。 – Patashu 2013-03-04 08:34:13

+0

[this](http://www.phpjabbers.com/date-and-time-manipulations-with-php-php30.html)可以幫助 – 2013-03-04 08:40:08

+3

您[同意做深入研究](http://stackoverflow.com/questions/ask-advice),但你的問題沒有顯示出這樣的努力。關於[處理日期的許多現有問題,您有哪些問題?](http://stackoverflow.com/search?q=adding+month+date+php)?他們爲什麼沒有幫助解決你的問題? – Gordon 2013-03-04 08:52:51

回答

0
$start = '2012-01-23'; 
$months = 12; 
$date=new DateTime($start); 
$date->modify('+'.$months.' month'); 
echo $date->format('Y-m-d'); 
+0

非常感謝diplex19。是的,我不想這種類型的答案。再次感謝你.... – 2013-03-04 09:48:09

0

您可以使用strtotime()僅僅數月添加到您的原棗......

$start = '2012-01-23'; 
$months = 3; 
$timeExpr = sprintf('+%d months', $months); 
$end = date($start, strtotime($timeExpr)); 

echo $end; //will output '2012-04-23' 
相關問題