怎么样只显示一条错误内容,$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 举报 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
