Laravel 6 - 第十五章 验证器

文章目录

Laravel 6 - 第一章 简介
Laravel 6 - 第二章 项目搭建
Laravel 6 - 第三章 文件夹结构
Laravel 6 - 第四章 生命周期
Laravel 6 - 第五章 控制反转和依赖注入
Laravel 6 - 第六章 服务容器
Laravel 6 - 第七章 服务提供者
Laravel 6 - 第八章 门面
Laravel 6 - 第九章 契约
Laravel 6 - 第十章 路由
Laravel 6 - 第十一章 中间件
Laravel 6 - 第十二章 控制器
Laravel 6 - 第十三章 请求
Laravel 6 - 第十四章 响应
Laravel 6 - 第十五章 验证器
Laravel 6 - 第十六章 Artisan 命令


目录


一、验证器(Validator)

用于验证输入数据是否符合特定规则的一个组件,Laravel 6 提供了一个简洁且强大的验证系统,可以轻松验证来自用户输入或其他来源的数据。

二、使用步骤

1.创建控制器

首先,根据Laravel 6 - 第十三章 请求 创建一个包含 store方法的UserController控制器,并注入Request请求实例,如下:

2.验证请求数据

1中例子,在控制器中有两种常用验证写法,如下:

三、验证类

验证类将验证逻辑完全封装在一个单独的类中,不仅重用性更高且更符合单一职责原则,在项目中更推荐使用这种方法来验证数据。

1.创建验证类

使用 artisan cli 创建 UserRequest 验证类,如下:

shell 复制代码
$ php artisan make:request UserRequest

验证类的存放位置在app/Http/Requests 目录。

2.添加验证规则

1中例子,在rules中添加规则,并可在messages 中自定义验证消息,如下:

3.使用验证类

中的例子,将 UserRequest 注入即可,如下:

4.自定义返回

默认情况下,如果验证失败,会生成一个让用户返回到先前位置的重定向响应。但是大多数情况下需要自定义返回错误,这时可以重写 failedValidation,如下:

相关推荐
聚名网5 小时前
域名net,com,cn有区别吗?有哪些不同呢?
服务器·开发语言·php
咸鱼翻身小阿橙8 小时前
VS2008 + .NET3.5 环境、加热台TCP通讯场景
tcp/ip·php·.net
zzqssliu14 小时前
基于Laravel + Express.js的代购系统多语言多货币架构设计
javascript·express·laravel
Yvonne爱编码15 小时前
JAVA EE初阶---DAY 2 计算机网络
java·开发语言·计算机网络·算法·java-ee·php
zuowei288917 小时前
Laravel 9.x核心特性全解析
php·laravel
Cheng小攸17 小时前
协议分析与分析工具(二)
开发语言·php
2501_9127840817 小时前
跨境电商独立站技术选型:为什么React+Vue+Laravel成为主流?
vue.js·react.js·laravel·taocarts
Johnstons18 小时前
5G网络来了,App怎么测?5G网络损伤测试完整指南
开发语言·网络·5g·php·弱网测试·网络损伤·网络损伤仪
石榴树下的七彩鱼18 小时前
图片去文字接口,支持去除图片中的文字(附 Python / Java / PHP / JS 示例)
java·python·php·api接口·图片去水印·ai图片修复·图片去文字
凡人叶枫2 天前
Effective C++ 条款31:将文件间的编译依存关系降至最低
linux·开发语言·c++·php·嵌入式开发·effective c++