enova / validation
Illuminate 验证包装器
dev-master
2018-09-18 23:56 UTC
Requires
- php: ^7.1.3
- illuminate/validation: 5.7.*
Requires (Dev)
- phpunit/phpunit: 7.3.*
This package is not auto-updated.
Last update: 2024-09-27 08:04:28 UTC
README
- 安装
- 简介
- 验证快速入门
- 创建手动验证
- 条件添加规则
- 自定义验证规则
安装
composer require enova/validator
用法
use Enova\Validation\Validator;
$validator = new Validator();
数据库存在验证器
使用 Illuminate Database Capsule 设置数据库连接实例
$db = $manager->getDatabaseManager();
$validator->setConnection($db);
提供翻译器;
$container = new Illuminate\Container\Container;
$container['translator'] = new Enova\Validation\Translator(new Enova\Validation\Lang\En());
$validator = new Validator($container);
提供自定义翻译器
要提供自定义翻译器,传递一个绑定到 translator
的 Illuminate\Container\Container
实例。
翻译器必须实现 Symfony\Component\Translation\TranslatorInterface
。
$container = new Illuminate\Container\Container;
$container['translator'] = new CustomTranslator();
$validator = new Validator($container);
创建验证器
$validator = Validator::make(
[
'name' => 'John',
'last_name' => 'Doe'
],
[
'name' => ['required', 'min:3'],
'last_name' => ['required', 'min:3']
]
);
处理错误消息
在调用验证器实例上的 errors 方法后,您将收到一个 Illuminate\Support\MessageBag
实例,该实例提供了一系列方便的方法来处理错误消息。
检索字段的第一个错误消息
要检索给定字段的第一个错误消息,使用 first 方法
$messages = $validator->errors();
echo $messages->first('email');
检索字段的全部错误消息
如果您只想检索给定字段的全部消息数组,使用 get 方法
foreach ($messages->get('email') as $message) {
//
}
检索所有字段的全部错误消息
要检索所有字段的全部消息数组,使用 all 方法
foreach ($messages->all() as $message) {
//
}
确定是否存在字段的错误消息
if ($messages->has('email')) {
//
}
使用格式检索错误消息
echo $messages->first('email', '<p>:message</p>');
Retrieving All Error Messages With A Format
foreach ($messages->all('<li>:message</li>') as $message) {
//
}
有关 Laravel 验证的更多信息,请参阅 Laravel 文档。