日期:2014-05-16  浏览次数:20492 次

已知日期:2013-07-31 加12个月 3个月 1个月 得到相应的日期
已知日期:2013-07-31  加12个月   3个月    1个月  得到相应的日期

求大牛怎么写PHP代码?

------解决方案--------------------
$s='2013-07-31';
echo date("Y-m-d",strtotime("$s+1 month"));
------解决方案--------------------
呵呵,想当然了
echo date("Y-m-d\n",strtotime("$s+7 month"));
得到 2014-03-03
select adddate('2013-07-31', INTERVAL 7 month)
得到 2014-02-28

显然,php 的表现是不尽人意的
------解决方案--------------------
mktime其实也可以达到要求

$t = '2013-07-31';
echo date("Y-m-d",mktime(0,0,0,date("m") + 12,date("d") , date("Y"))).'<br>';
echo date("Y-m-d",mktime(0,0,0,date("m") + 3,date("d") , date("Y"))).'<br>';
echo date("Y-m-d",mktime(0,0,0,date("m") + 1,date("d") , date("Y"))).'<br>';



结果:

2014-07-31
2013-10-31
2013-08-31

------解决方案--------------------
$t = '2013-07-31';
echo date("Y-m-d",mktime(0,0,0,date("m") + 2,date("d") , date("Y")));

得 2013-10-01

最要不得的是:回避矛盾