2019-01-18 10:47:26
围观(4254)
自从工作以来,每天都在使用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的坑