在 Yii2 中,验证 时间 格式 15:00 形式的值的实现
1、代码实现如下
1 2 3 4 5 6 7 8 | use yii\base\InvalidArgumentException; use yii\validators\DateValidator; $validator = new DateValidator([ 'type' => DateValidator::TYPE_TIME, 'format' => 'H:i' ]); if (! $validator ->validate( $this ->value, $error )) { throw new InvalidArgumentException( $surveyFormField [ 'name' ] . '验证失败:' . $error ); } |
2、但是验证失败,如图1
1 2 3 4 | { "code": 10500, "message": "时间验证失败:属性 该输入 的格式无效。" } |
3、由于 H:i 的格式为 PHP 中的格式。设置以 php: 开头的字符串,用来表示PHP可以识别的日期时间格式。验证通过。如图2
1 2 3 4 5 6 7 8 | use yii\base\InvalidArgumentException; use yii\validators\DateValidator; $validator = new DateValidator([ 'type' => DateValidator::TYPE_TIME, 'format' => 'php:H:i' ]); if (! $validator ->validate( $this ->value, $error )) { throw new InvalidArgumentException( $surveyFormField [ 'name' ] . '验证失败:' . $error ); } |
近期评论