以下代码且为一个实例,大家可进行想法自行修改。
Wink~😉
1、页面Form表单准备
<form action="{{ route("article.creates") }}" method="post">{{ csrf_field() }}
文章标题:<input type="text" name="title" placeholder=""><br>
文章内容:<input type="text" name="content" placeholder=""><br>
<button type="submit">立即提交</button>
</form>
2、路由编写
Route::name('article.')->prefix('article')->group(function(){
Route::get('/validation.html', 'ValidationController@show')->name('show');//访问页面路由
Route::post('/creates.html', 'ValidationController@createArticle')->name('creates');//验证路由
});
3、内容验证
public function createArticle(Request $request)
{
$data['title'] = $request->input('title');
$data['content'] = $request->input('content');
//定义规则
$rules = [
'title' => 'required|max:5',
'content' => 'required|max:30',
];
//提示信息
$message = [
'title.required' => '请输入标题不能为空',
'title.max'=>'标题过长,请重新输入',
'content.required' => '请输入内容不能为空',
];
//进行验证
$validator = Validator::make($data,$rules,$message);
$errors = $validator->errors();//输出所有错误信息
$msg = $errors->first('title');//获取某一条的提示信息
dump($errors);
}
- 指定字段错误信息获取
foreach ($errors->get('title') as $message) {
dump($message);
}
- 所有字段的所有错误信息
foreach ($errors->all() as $message) {
dump($message);
}
- 将“可选”的请求字段标记为 nullable —— 如果你不想让验证器将 null 判定为无效的话
$this->validate($request, [
'publish_at' => 'nullable|date',
]);