smoren/validator
最新稳定版本:v0.4.0
Composer 安装命令:
composer require smoren/validator
包简介
Responsible validation tools with fluent interface
README 文档
README
How to install to your project
composer require smoren/validator
Usage
use Smoren\Validator\Factories\Value; use Smoren\Validator\Exceptions\ValidationError; $rule = Value::container() ->array() ->hasAttribute('id', Value::integer()->positive()) ->hasAttribute('probability', Value::float()->between(0, 1)) ->hasAttribute('vectors', Value::container()->array()->allValuesAre( Value::container() ->array() ->lengthIs(Value::integer()->equal(2)) ->allValuesAre(Value::integer()) )); $validInput = [ 'id' => 13, 'probability' => 0.92, 'vectors' => [[1, 2], [3, 4], [5, 6]], ]; try { $rule->validate($validInput); } catch (ValidationError $e) { // Input is valid so this block is unreachable. } $invalidInput = [ 'id' => '13', 'probability' => 1.92, 'vectors' => [[1, 2.1], [3, 4], [5, 6]], ]; try { $rule->validate($invalidInput); } catch (ValidationError $e) { // Input is invalid so we catch the exception. print_r($e->getViolatedRestrictions()); /* [ ['attribute_is', [ 'attribute' => 'id', 'rule' => 'integer', 'violated_restrictions' => [ ['integer', []] ] ]], ['attribute_is', [ 'attribute' => 'probability', 'rule' => 'float', 'violated_restrictions' => [ ['between', [ 'start' => 0, 'end' => 1 ]] ] ]], ['attribute_is', [ 'attribute' => 'vectors', 'rule' => 'container', 'violated_restrictions' => [ ['all_values_are', [ 'rule' => 'container', 'violated_restrictions' => [ ['all_values_are', [ 'rule' => 'integer', 'violated_restrictions' => [ ['integer', []] ] ]] ] ]] ] ]] ] */ }
Unit testing
composer install
composer test-init
composer test
Standards
PHP Validator Tools conforms to the following standards:
- PSR-1 — Basic coding standard
- PSR-4 — Autoloader
- PSR-12 — Extended coding style guide
License
PHP Validation Tools is licensed under the MIT License.
统计信息
- 总下载量: 11
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 6
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2023-03-22