怎么样只显示一条错误内容,$user->errors 这个不是一个一个字段验证,一下全验证完了。 [ 2.0 版本 ]
$user = new User();
$user->attributes = Yii::$app->request->post();
if($user->validate()){
}else{
dump($user->errors);
$this->ajaxReturn('',$user->errors,0);
}
array (size=3)
'username' =>
array (size=1)
0 => string '请输入用户名!' (length=21)
'password' =>
array (size=1)
0 => string '请输入密码!' (length=18)
'vcode' =>
array (size=1)
0 => string '请输入验证码!' (length=21)
共 4 个回答
-
zhoupenghui 回答于 2016-06-13 09:37 举报
获取一条错误信息,获取所有错误信息,这样来吧:
$user = new User(); $user->attributes = Yii::$app->request->post(); if($user->validate()){ // 验证成功后的操作 } $error = []; $onlyOneError=[]; if ($user ->hasErrors()) { // 判断是否有错误 $onlyOneError = $user->getFirstError($attribute); //获取一条错误信息, $attribute里填要获取错误的属性 $tmp = $user ->getErrors(); // 获取所有错误信息 foreach ($tmp as $rows) { foreach ($rows as $row) { $error[] = $row; // 把错误信息放入数组中 } } } var_dump($onlyOneError,$error);
371663062
注册时间:2015-06-09
最后登录:2016-07-11
在线时长:7小时30分
最后登录:2016-07-11
在线时长:7小时30分
- 粉丝0
- 金钱0
- 威望0
- 积分70