我的静态日期是28-04-2012。我想更新日期到达新月28日的唯一月份。因此,如果日期为28-05-2012
,则28-06-2012
,28-07-2012
等等。
我还想更新我到达2013年的那一年。但是总是将日期保持在28岁?有人可以告诉我如何使用js或php完成这项工作吗?
答案 0 :(得分:2)
<?php
$date = '28-04-2012';
echo date('j-m-Y', strtotime("1 month", strtotime($date))) . "\n";
?>
答案 1 :(得分:2)
$current_date = "28-04-2012";
$next_month = strtotime($current_date . "+1month");
echo date('Y-m-d', $next_month);
我猜的最简单的技巧。
答案 2 :(得分:1)
见这里:http://www.roseindia.net/tutorial/php/phpdate/php-date-add-1-month.html
$todayDate = date("Y-m-d");// current date
echo "Today: ".$todayDate."<br>";
//Add one day to today
$dateOneMonthAdded = strtotime(date("Y-m-d", strtotime($todayDate)) . "+1 month");
echo "After adding one month: ".date('l dS \o\f F Y', $dateOneMonthAdded)."<br>";
答案 3 :(得分:0)
人们建议strtotime()
,但我不得不说我非常不喜欢这个功能。它不是为日期算术而设计的,但它是旧版本PHP中唯一可用的选项,因此每个人都使用它。
可以在PHP5 DateTime
class中找到更好的解决方案,特别是DateTime::Add
方法(也称为date_add()
函数)。
添加使用strtotime() instead of
DateTime :: Add()is if you're using a version of PHP older than 5.3, since this is when the
Add`方法的唯一原因。但如果是这种情况,您的首要任务应该是升级PHP。