lefuturiste / validator
PS7 请求的简单验证助手
1.4.2
2021-01-20 21:06 UTC
Requires
- php: >=7.4
- ext-ctype: *
- ext-mbstring: *
Requires (Dev)
- ext-json: *
- phpunit/phpunit: ^9.5.1
README
Simple php validator helper for PSR7 request.
如何使用?
从 PSR-7
$validator = new Validator($request->getParsedBody());
从 php 输入
$validator = new Validator($_POST);
验证方法(或规则)
$validator->required('example'); $validator->notEmpty('example');
还有更多验证方法(或规则)...
已知输入是否有效
$validator->isValid(); // TRUE|FALSE
获取错误
要获取您输入的所有错误列表,可以使用 getErrors() 方法,该方法返回一个包含所有错误的数组
$validator->getErrors();
您可以使用不同的格式获取错误,以规则为键
$validator->getErrors(\Validator\ValidationError::FORMAT_WITH_KEYS);
或作为数组的数组,其中每个数组代表一个错误,包含 'code' 和 'message' 键(用于符合 JSON:API 规范的 API 的格式)
$validator->getErrors(\Validator\ValidationError::FORMAT_ARRAY);
如果您不想每次都指定 ValidationError 格式,可以使用此静态调用将设置用于整个项目。例如,如果您想将 FORMAT_ARRAY 设置为整个项目的默认格式,可以使用以下代码
\Validator\ValidationError::setDefaultFormat(\Validator\ValidationError::FORMAT_ARRAY);
I18n
支持英语、法语和西班牙语
ValidationLanguage::setLang('fr'); // or `en` or `es`
测试
所有测试都在 tests
文件夹中。您可以使用以下命令运行测试(在运行测试之前,请先执行 composer install)。
- 使用 composer:
composer run test
或composer run tests
- 在 Linux/mac 上:
vendor/bin/phpunit tests
- 在 Windows 上:
vendor/bin/phpunit.bat tests