Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在将YII中的文本字段保存到DB之前验证它?_Yii - Fatal编程技术网

如何在将YII中的文本字段保存到DB之前验证它?

如何在将YII中的文本字段保存到DB之前验证它?,yii,Yii,如何在将YII中的文本字段保存到DB之前验证它 我有一个日期选择器,我在保存之前将它从Y-m-d格式转换为d-m-Y格式 现在,我想验证相同的字段,以便不允许在今天的日期之前有任何日期。 我试过以下方法 array('edate','compare','compareValue'=>date('Y-m-d'),'operator'=>'>=', 'allowEmpty'=>false), 由于日期现在是d-m-Y格式,因此不会显示错误。 我还尝试将上述代码更改为 日期(

如何在将YII中的文本字段保存到DB之前验证它

我有一个日期选择器,我在保存之前将它从Y-m-d格式转换为d-m-Y格式

现在,我想验证相同的字段,以便不允许在今天的日期之前有任何日期。 我试过以下方法

array('edate','compare','compareValue'=>date('Y-m-d'),'operator'=>'>=', 'allowEmpty'=>false),
由于日期现在是d-m-Y格式,因此不会显示错误。 我还尝试将上述代码更改为
日期(d-m-Y),但找不到结果

您可以用Yii编写自定义验证程序。因此,在模型文件中,添加如下函数:

public function isValidDate($attribute, $params)
{
    if(strtotime($this->$attribute) < time())
    {
         $this->addError($attribute, 'Date cannot be in the past');
    }
}
array('edate', 'isValidDate'),