2019-01-18 10:47:26
围观(5131)
自从工作以来,每天都在使用Laravel ,也每天都在学习Laravel。
每次遇到表单验证都翻文档,然而每次翻文档都需要看上十分钟才能写好一个验证,也许是个人原因。 不知是文档过于混乱还是个人原因。
直接上代码:
首先需要引入Validator类
use Validator;
然后将用户输入的内容赋值给变量
$input = $Request->all();
记住不能忘了给方法加入Request
然后定义规则
$rules = [ 'key1' => 'required|min:6|max:200', 'key2' => 'required|min:2|max:10' ];
自定义消息
$message = [ 'key1.required' => '请输入key1内容', 'key1.min' => '内容字数最少要6个', 'key1.max' => '内容字数最多200个', 'key2.required' => '请输入key2内容', 'key2.min' => '署名字数最少要2个', 'key2.max' => '署名字数最多10个' ];
然后使用Validator类里面的make方法
$validator = Validator::make($input,$rules,$message);
判断是否有不符合规则的数据 然后返回错误信息
if ($validator->fails()) {
return redirect()
->back()
->withErrors($validator)
->withInput();
}最后在视图中显示错误信息
{{ $errors->first('key1') }}
{{ $errors->first('key2') }}完整DEMO
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Validator;
class TestController extends Controller
{
public function index(Request $Request){
$input = $Request->all();
$rules = [
'key1' => 'required|min:6|max:200',
'key2' => 'required|min:2|max:10'
];
$message = [
'key1.required' => '请输入key1内容',
'key1.min' => '内容字数最少要6个',
'key1.max' => '内容字数最多200个',
'key2.required' => '请输入key2内容',
'key2.min' => '署名字数最少要2个',
'key2.max' => '署名字数最多10个'
];
$validator = Validator::make($input,$rules,$message);
if ($validator->fails()) {
return redirect()
->back()
->withErrors($validator)
->withInput();
}
}
}
本文地址 : bubaijun.com/page.php?id=114
版权声明 : 未经允许禁止转载!
上一篇文章: Windows系统下安装JSP开发环境
下一篇文章: 记录Laravel使用Redis的坑