在PHP 5.1中添加月份的准确方法?

Sgr*_*ite 7 php strtotime

昨天我遇到了PHP的strtotime问题没有正确添加一个月.在'2011-05-31'我跑了:

date('Y-m-d',strtotime( '+1 month', strtotime('now')));
Run Code Online (Sandbox Code Playgroud)

当我期待'2011-06-30'时,返回'2011-07-01'.

MySQL没有任何问题.

我宁愿不用这个重新发明轮子,因为根据我的经验,用日期计算很容易犯错误.

有没有人为PHP 5.1提供可靠且经过测试的解决方案?

mab*_*ako 5

它当然可以用PHP:检查strtotime手册,尤其是这个评论.

如果您有可用的MySQL连接,SELECT DATE_ADD( '2011-05-31', INTERVAL 1 MONTH )那么冗余就会少,因为(正确的)功能已经实现,您无需自己实现.