rossriley/validation
最新稳定版本:1.2.1
Composer 安装命令:
composer require rossriley/validation
包简介
Data validation library. Validate arrays, array objects, domain models etc using a simple API. Easily add your own validators on top of the already dozens built-in validation rules. This fork maintains PHP 5.3 compatibility.
README 文档
README
#Sirius Validation
Sirius Validation is a library for data validation. It offers:
- validator object to validate arrays,
ArrayObjectsor objects that have atoArraymethod. It can be extended easily to validate other types. - value validator object to validate single values
- validation helper to simplify single value validation (does not generate error messages, only returns TRUE/FALSE)
- build-in validation rules to perform the actual data validation. The validation rules are used by the helper and validator objects.
Out-of-the-box, the library can handle arrays, ArrayObjects and objects that have implemented the toArray method.
In order to validate other data containers you must create a DataWrapper so that the validator be able to extract data from your object.
##Elevator pitch
$validation = new \Sirius\Validation\Validator; // add a validation rule $validator->add('title', 'required'); // add a rule that has a list of options $validator->add('title', 'maxlength', array('max' => 100)); // or use JSON $validator->add('title', 'maxlength', '{"max": 100}'); // or a URL query string $validator->add('title', 'maxlength', 'max=100'); // add a rule with a custom error message $validator->add('title', 'maxlength', 'max=100', 'Article title must have less than {max} characters'); // add a rule with a custom message and a label (very handy with forms) $validator->add('title', 'maxlength', 'max=100', '{label} must have less than {max} characters', 'Title'); // add all of rule's configuration in a string (you'll see later why it's handy') $validator->add('title', 'maxlength(max=255)({label} must have less than {max} characters)(Title)'); // add multiple rules at once (separate using [space][pipe][space]) $validator->add('title', 'required | maxlength(max=255) | minlength(min=10)'); // add all your rules at once $validator->add(array( 'title' => 'required | maxlength(max=10)({label} must have less than {max} characters)(Title)', 'content' => 'required', 'source' => 'website' )); // add nested rules $validator->add('recipients[*]', 'email'); //all recipients must be valid email addresses $validator->add('shipping_address[city]', 'MyApp\Validator\City'); // uses a custom validator to validate the shipping city
##Documentation
Release notes
1.1
- Added HHVM to Travis CI
- Renamed Validator* classes into Rule* classes (breaking change if you used custom rule classes)
- Renamed ValidatorFactory to RuleFactory (breaking change)
统计信息
- 总下载量: 18.32k
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 2
- 点击次数: 1
- 依赖项目数: 1
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2014-06-23