关于此代码的奇怪行为:
std::string
将返回
var_dump((new \DateTime())->createFromFormat("j-M-Y", "30-Nov-2015")->add(new \DateInterval('P3M')));
而不是预期......
class DateTime#2 (3) {
public $date =>
string(19) "2016-03-01 15:13:32"
public $timezone_type =>
int(3)
public $timezone =>
string(14) "Africa/Algiers"
}
有什么想法吗?
答案 0 :(得分:0)
示例
var_dump((new \DateTime())->createFromFormat("j-M-Y", "30-Nov-2015")->add(new \DateInterval('P3M')));
不能被视为"在该月的最后一天添加3个月",而是#34;在该月的第30天添加3个月"。自2016年2月起,有29天而不是28天,这个月的第一天是3月1日之后的30天。同样,请注意
var_dump((new \DateTime())->createFromFormat("j-M-Y", "30-Nov-2015")->add(new \DateInterval('P2M')));
在1月30日而不是31日登陆。