jannbar / brainiac
一个模式验证库,深受Zod启发。
v1.3.0
2024-06-17 09:44 UTC
Requires (Dev)
- laravel/pint: ^1.15
- pestphp/pest: ^2.34
- phpstan/phpstan: ^1.11
README
一个PHP模式验证库,深受Zod启发。
代码质量
Brainiac的代码经过全面测试,并符合最大级别的PHPStan。
安装
composer require jannbar/brainiac
用法
目前支持以下数据类型
您可以使用parse
或safe_parse
方法。当验证失败时,parse
将抛出异常,而safe_parse
将始终返回一个基于验证成功形状的关联数组
// On validation success. $success = [ "success" => true, "data" => "parsed value", ]; // On validation failure. $failure = [ "success" => false, "error" => "error message", ];
数组
<?php use Jannbar/Brainiac/Brainiac; Brainiac::array()->parse([4, 2]); Brainiac::array()->min(1)->parse([4, 2]); Brainiac::array()->max(10)->parse([4, 2]); Brainiac::array()->of(Brainiac::number())->parse([4, 2]);
布尔值
<?php use Jannbar/Brainiac/Brainiac; Brainiac::boolean()->parse(true);
数字
<?php use Jannbar/Brainiac/Brainiac; Brainiac::number()->parse(42); Brainiac::number()->min(1)->parse(42); Brainiac::number()->max(10)->parse(42); Brainiac::number()->int()->parse(42); Brainiac::number()->float()->parse(43.5); Brainiac::number()->positive()->parse(1); Brainiac::number()->negative()->parse(-1);
字符串
<?php use Jannbar/Brainiac/Brainiac; Brainiac::string()->parse('foo'); Brainiac::string()->min(1)->parse('foo'); Brainiac::string()->max(10)->parse('foo');