Yii2 - 使用DateValidator验证ISO8601日期时间格式

时间:2017-08-17 07:44:23

标签: php datetime yii2

我有以下格式的ISO8601日期时间值(由JS生成):

var d = new Date(),
    dateString = d.toISOString(); // returns "2017-08-17T07:39:34.502Z"

在我的模型中,我想创建一个验证规则来验证此值。

我尝试过以下格式,但报告日期时间字符串无效:

public function rules()
{
    return [
        ...
        ['endTime', 'datetime', 'format' => 'php:DateTime::ATOM'],
        ...
    ];
}

我使用DateTime::ATOM代替DateTime::ISO8601,因为这是PHP documentation本身推荐的内容。

任何想法如何使这项工作?

1 个答案:

答案 0 :(得分:3)

['endTime', 'date', 'format' => 'php:' . \DateTime::ATOM],

修改:datetime错误 - 正确的验证工具为date