Php 比较规则yii2中的两个日期

Php 比较规则yii2中的两个日期,php,yii2,Php,Yii2,我想比较规则中的两个日期。 当我在start_date和end_date中输入日期和时间时,我收到错误消息“end必须大于或等于start” 开始日期和结束日期是日期时间字段。 我在寻找解决办法 return [ ['end_date', 'date', 'format' => 'php:Y-m-d H:i:s', 'skipOnEmpty' => false], ['start_date', 'date', 'format' => 'php:Y

我想比较规则中的两个日期。
当我在
start_date
end_date
中输入日期和时间时,我收到错误消息“end必须大于或等于start” 开始日期和结束日期是日期时间字段。 我在寻找解决办法

return [
        ['end_date', 'date', 'format' => 'php:Y-m-d H:i:s', 'skipOnEmpty' => false],
        ['start_date', 'date', 'format' => 'php:Y-m-d H:i:s', 'skipOnEmpty' => false],
        ['end_date', 'compare', 'compareAttribute' => 'start_date', 'operator' => '>='],
    ];

这应该在Yii2中起作用。规则将这两个属性作为日期进行比较。

那么,这是您问题中的一个输入错误,因为操作符是>,而不是>=没有输入错误,我正在比较日期和时间。那么我不理解你的问题,如果你输入相同的开始和结束日期,正如你在问题中所说的,那么你的验证工作正常。好的,我可以看到,那么你输入的是什么日期,确切地说,是什么问题?你的日期和时间是一样的吗?你期望发生什么事而不是?对于所有的问题,我很抱歉,我真的想了解问题是什么!开始日期=12-12-2015 10:15和结束日期=12-12-2015 11:15这给出了如上所述的错误。您能解释一下这是怎么回事吗?
[ 'endDate', 'compareDate', 'compareAttribute' => 'startDate', 'operator' => '>=', 'type' => 'datetime', 'message' => 'Invalid Date' ],
            [ 'endDate', 'compare', 'compareAttribute' => 'startDate', 'operator' => '>=', 'type' => 'datetime', 'message' => 'endDate must be after staartDate' ],