为什么我的PHP代码给我以下代码的错误结果:
date_default_timezone_set('UTC');
echo date('d-m-Y');
正在工作和生产:
30-01-2013
但是,此代码:
date_default_timezone_set('UTC');
echo date('d-m-Y',strtotime("+1 month"));
正在制作此日期:
02-03-2013
而不是:
28-02-2013
但是我只需要月份编号。
它实际上是正确的。
今天是30-01
. +1 个月应该是30-02
.此日期不存在,因此变为02-03
(28-02 + 2天)
使用 求
解
http://derickrethans.nl/obtaining-the-next-month-in-php.html
法典:
echo date('d-m-Y',strtotime("first day of next month"));
因为我只需要月份编号。
这个问题由
PHP开发人员在这里解释。您可以使用一些解决方法,但您必须解释得出 1 月 31 日 + 1 个月是 2 月 02 日的结论的逻辑。
这是因为二月只有 28 天。strtotime +1 Month 将增加 30 天,请尝试改用 DateTime 类:http://php.net/manual/en/class.datetime.php
退房 ,
<?php
date_default_timezone_set('UTC');
//Current date
$date= date("Y-m-d");
// Timestamp of new date after adding 1 month
$timestamp= strtotime(date("Y-m-d", strtotime($date)) . "+1 month");
//Converting timestamp of new date to readable date.
$newdate= date("Y-m-d",$timestamp);
?>