如何获取日期字符串0001-01-01T00:00:00.0000000+01:00的正确PHP验证格式?
问题解决
你的日期字符串"0001-01-01T00:00:00.0000000+01:00"验证失败的原因是:秒的小数部分是7位数字,而你用的u格式符仅能匹配6位微秒数。
正确的PHP日期格式规则应为Y-m-d\TH:i:s.uuuuuuuP,修改后的验证代码如下:
public function rules() { return [ [ ['requested_delivery_date'], 'datetime', 'format' => 'php:Y-m-d\TH:i:s.uuuuuuuP' ], ]; }
补充说明:PHP的u格式符对应6位微秒,若遇到7位小数的秒值(通常是包含纳秒的低阶位),需要用连续的u来匹配对应位数,7个u就能完美适配你提供的日期字符串格式。
内容的提问来源于stack exchange,提问作者Manos Nathanail
相关产品推荐
相关产品推荐

