您好我想从1989-06-31开始创建DateTime对象。正如您所看到的,这个日期有很多天(6月不能有31天)。但是打电话给这个
$semi_valid_date = "1989-06-31";
$semi_valid_datetime = DateTime::createFromFormat('Y-m-d',$semi_valid_date);
$valid_date = $semi_valid_datetime->format('Y-m-d');
将存储到$valid_date
日期1989-07-01。
当月份有多天时,是否有可能抛出错误?
答案 0 :(得分:1)
在尝试使用之前使用checkdate()
验证日期:
var_dump(checkdate(6, 31, 1989));
// bool(false)
var_dump(checkdate(6, 30, 1989));
// bool(true)