
php的strtotime('+1 month'),如果是1月31号,应该是2月最后一天,但是得到的却是3月2号,怎么解决这个bug
展开全部
很简单, 直接上代码吧
//不要当前的DAY, 只要年月
$ym = date('Y-m' , time());
echo date( 'Y-m-d' , strtotime('+1 month' , strtotime($ym) ));
更多追问追答
追问
不是这样的,我是要指定开始时间的比如2016-1-31号加1个月,这样的
追答
你把2016-1-31转成2016-1啊
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我在上面的基础上优化了一下
//不要当前的DAY, 只要年月
$ym = date('Y-m', time());
echo date('Y-m-d', strtotime('+2 month -1 day', strtotime($ym)));
---------------------------------------
再次优化
var_dump(date("Y-m-d", strtotime("last day of +1 month", strtotime("2019-01-31"))));
////输出2019-02-28
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询