intervention / validation
Laravel 框架的额外验证规则
Requires
- php: ^8.1
- ext-mbstring: *
- illuminate/validation: ^10|^11
Requires (Dev)
- phpstan/phpstan: ^1
- phpunit/phpunit: ^10.0
- slevomat/coding-standard: ~8.0
- squizlabs/php_codesniffer: ^3.8
- symfony/uid: ^5.1|^6.2
- dev-main
- 4.4.2
- 4.4.1
- 4.4.0
- 4.3.0
- 4.2.0
- 4.1.3
- 4.1.2
- 4.1.1
- 4.1.0
- 4.0.3
- 4.0.2
- 4.0.1
- 4.0.0
- 4.0.0-beta.1
- 4.0.0-alpha.2
- 4.0.0-alpha.1
- 3.3.3
- 3.3.2
- 3.3.1
- 3.3.0
- 3.3.0-beta.1
- 3.2.0
- 3.1.1
- 3.1.0
- 3.0.3
- 3.0.2
- 3.0.1
- 3.0.0
- 3.0.0-beta.3
- 3.0.0-beta.2
- 3.0.0-beta.1
- 3.0.0-alpha.1
- v2.x-dev
- 2.9.0
- 2.8.0
- 2.7.0
- 2.6.8
- 2.6.7
- 2.6.6
- 2.6.5
- 2.6.4
- 2.6.3
- 2.6.2
- 2.6.1
- 2.6.0
- 2.5.2
- 2.5.1
- 2.5.0
- 2.4.2
- 2.4.1
- 2.4.0
- 2.3.4
- 2.3.3
- 2.3.2
- 2.3.1
- 2.3.0
- 2.2.0
- 2.1.1
- 2.1.0
- 2.0.3
- 2.0.2
- 2.0.1
- 2.0.0
- 2.0.0-beta3
- 2.0.0-beta2
- 2.0.0-beta1
- v1.x-dev
- 1.4.3
- 1.4.2
- 1.4.1
- 1.4.0
- 1.3.0
- 1.2.1
- 1.2.0
- 1.1.12
- 1.1.11
- 1.1.10
- 1.1.9
- 1.1.8
- 1.1.7
- 1.1.6
- 1.1.5
- 1.1.4
- 1.1.3
- 1.1.2
- 1.1.1
- 1.1.0
- 1.0.8
- 1.0.7
- 1.0.6
- 1.0.5
- 1.0.4
- 1.0.3
- 1.0.2
- 1.0.1
- 1.0.0
- dev-feature/php-84
This package is auto-updated.
Last update: 2024-09-21 07:20:59 UTC
README
Intervention Validation 是 Laravel 自身验证系统的扩展库。该包添加了验证数据如 IBAN、BIC、ISBN、信用卡号码等规则的规则。
安装
您可以使用 Composer 快速轻松地安装此包。
通过 Composer 需求此包
$ composer require intervention/validation
Laravel 集成
验证库旨在与 Laravel 框架(>=10)一起使用。它包含一个服务提供者,该提供者将被自动发现并注册验证规则到您的安装中。该包提供了 30 个额外的验证规则,包括多语言错误消息,可以使用像 Laravel 自己的验证规则一样使用。
use Illuminate\Support\Facades\Validator; use Intervention\Validation\Rules\Creditcard; use Intervention\Validation\Rules\Hexadecimalcolor; use Intervention\Validation\Rules\Username; $validator = Validator::make($request->all(), [ 'color' => new Hexadecimalcolor([3, 6]), // pass rule as object 'number' => ['required', 'creditcard'], // or pass rule as string 'name' => 'required|min:3|max:20|username', // combining rules works as well ]);
更改错误消息
将相应的键添加到 /resources/lang/<language>/validation.php
,例如
// example 'iban' => 'Please enter IBAN number!',
或直接将自定义消息添加到验证器中,如文档中所述。
可用规则
以下验证规则与此包一起提供。
奥地利保险号(奥地利社会保险号)
正在验证的字段必须是奥地利保险号
public Intervention\Validation\Rules\AustrianInsuranceNumber::__construct()
Base64 编码字符串
正在验证的字段必须是Base64 编码。
public Intervention\Validation\Rules\Base64::__construct()
商业识别码(BIC)
检查有效的商业识别码(BIC)。
public Intervention\Validation\Rules\Bic::__construct()
骆驼命名法字符串
正在验证的字段必须是格式化为骆驼命名法。
public Intervention\Validation\Rules\Camelcase::__construct()
无类域间路由(CIDR)
检查值是否为无类域间路由表示法(CIDR)。
public Intervention\Validation\Rules\Cidr::__construct()
信用卡号码
正在验证的字段必须是一个有效的信用卡号码。
public Intervention\Validation\Rules\Creditcard::__construct()
数据 URI 方案
正在验证的字段必须是一个有效的数据 URI。
public Intervention\Validation\Rules\DataUri::__construct(?array $media_types = null)
域名
正在验证的字段必须是一个格式良好的域名。
public Intervention\Validation\Rules\Domainname::__construct()
欧洲商品编号(EAN)
检查有效的欧洲商品编号。
public Intervention\Validation\Rules\Ean::__construct(array $lengths = [8, 13])
参数
长度
可选的整数长度(8 或 13)以仅检查 EAN-8 或 EAN-13。
全球发行标识符(GRid)
正在验证的字段必须是一个全球发行标识符。
public Intervention\Validation\Rules\Grid::__construct()
全球贸易项目编号(GTIN)
检查有效的全球贸易项目编号。
public Intervention\Validation\Rules\Gtin::__construct(array $lengths = [8, 12, 13, 14])
参数
长度
可选的允许长度的数组,以仅检查某些类型(GTIN-8、GTIN-12、GTIN-13 或 GTIN-14)。
十六进制颜色代码
正在验证的字段必须是一个有效的十六进制颜色代码。
public Intervention\Validation\Rules\Hexadecimalcolor::__construct(array $lengths = [3, 4, 6, 8])
参数
长度
可选长度作为整数,以检查仅为短格式(3或4个字符)或完整十六进制格式(6或8个字符)。
HSL 颜色
正在验证的字段必须是一个有效的HSL 颜色代码。
public Intervention\Validation\Rules\Hslcolor::__construct()
HSV 颜色
正在验证的字段必须是一个有效的HSV/HSB 颜色代码。
public Intervention\Validation\Rules\Hsvcolor::__construct()
无 HTML 文本
正在验证的字段必须不包含任何 HTML 代码。
public Intervention\Validation\Rules\HtmlClean::__construct()
国际银行账户号码 (IBAN)
检查有效的国际银行账户号码 (IBAN)。
public Intervention\Validation\Rules\Iban::__construct()
国际移动设备身份码 (IMEI)
正在验证的字段必须是一个国际移动设备身份码 (IMEI)。
public Intervention\Validation\Rules\Imei::__construct()
国际标准书号 (ISBN)
正在验证的字段必须是一个有效的国际标准书号 (ISBN)。
public Intervention\Validation\Rules\Isbn::__construct(array $lengths = [10, 13])
参数
长度
可选长度参数作为整数,以检查仅为 ISBN-10 或 ISBN-13。
国际证券识别号码 (ISIN)
检查有效的国际证券识别号码 (ISIN)。
public Intervention\Validation\Rules\Isin::__construct()
国际标准连续出版物号 (ISSN)
检查有效的国际标准连续出版物号 (ISSN)。
public Intervention\Validation\Rules\Issn::__construct()
JSON Web Token (JWT)
给定值必须是格式为JSON Web Token的值。
public Intervention\Validation\Rules\Jwt::__construct()
横线分隔大小写字符串
给定值必须格式化为横线分隔大小写。
public Intervention\Validation\Rules\Kebabcase::__construct()
纬度
检查有效的地理纬度。
public Intervention\Validation\Rules\Latitude::__construct()
经度
检查有效的地理经度。
public Intervention\Validation\Rules\Longitude::__construct()
经纬度
public Intervention\Validation\Rules\LatLng::__construct()
小写字符串
给定值必须全部是小写字母。
public Intervention\Validation\Rules\Lowercase::__construct()
Luhn 算法
给定值必须通过其包含的Luhn 算法校验位检查。
public Intervention\Validation\Rules\Luhn::__construct()
媒体 (MIME) 类型
检查有效的Mime 类型(媒体类型)。
public Intervention\Validation\Rules\MimeType::__construct()
邮政编码
正在验证的字段必须是给定国家的邮政编码。
public Intervention\Validation\Rules\Postalcode::__construct(array $countrycodes = [])
参数
countrycode
ISO-639-1 格式的国家代码。
邮政编码(静态实例化)
public static Intervention\Validation\Rules\Postalcode::countrycode(array $countrycodes): Postalcode
参数
countrycode
ISO-639-1 格式的国家代码。
邮政编码(带引用的静态实例化)
public static Intervention\Validation\Rules\Postalcode::reference(string $reference): Postalcode
参数
reference
参考键,用于从验证器中的其他数据获取ISO-639-1国家代码。
语义版本号
正在验证的字段必须是使用语义版本控制的有效版本号。
public Intervention\Validation\Rules\SemVer::__construct()
SEO 优化短文本(缩略词)
正在验证的字段必须是一个用户友好的、SEO 优化短文本。
public Intervention\Validation\Rules\Slug::__construct()
蛇形大小写字符串
正在验证的字段必须格式化为蛇形大小写文本。
public Intervention\Validation\Rules\Snakecase::__construct()
标题大小写字符串
正在验证的字段必须格式化为标题格式。
public Intervention\Validation\Rules\Titlecase::__construct()
通用唯一字母顺序可排序标识符(ULID)
正在验证的字段必须是一个有效的通用唯一字母顺序可排序标识符。
public Intervention\Validation\Rules\Ulid::__construct()
大写字符串
正在验证的字段必须全部为大写。
public Intervention\Validation\Rules\Uppercase::__construct()
用户名
正在验证的字段必须是一个有效的用户名。由字母数字字符、下划线、减号组成,必须以字母开头。不允许出现多个下划线和减号字符。下划线和减号字符不允许出现在开头或结尾。
public Intervention\Validation\Rules\Username::__construct()
开发与测试
此软件包附带一个Docker镜像,用于构建测试套件容器。要构建此容器,您必须在您的系统上安装Docker。您可以使用以下命令运行所有测试。
$ docker-compose run --rm --build tests
作者
此库由Oliver Vogel开发和维护。
感谢贡献者社区为此项目的改进提供了帮助。
许可证
Intervention Validation遵循MIT许可证。