parfumix / php-function-arguments
dev-master
2015-05-18 11:50 UTC
Requires
- php: >=5.4.0
- illuminate/validation: ~5.0@dev
This package is auto-updated.
Last update: 2024-09-19 21:59:46 UTC
README
参数助手是一个类助手,可以帮助您减少PHP函数的参数数量,并轻松将其转换为类。它还可以提取和验证...
// From .. public function example($arg1, $arg2, $arg3, $arg4 = null, $arg5 = array()); // To .. public function example(Argumentable $args);
安装
您可以使用composer
包管理器进行安装。您可以选择运行
$ php composer.phar require parfumix/php-function-arguments "dev-master"
或在您的composer.json文件中添加
"parfumix/php-function-arguments": "dev-master"
到您的composer.json文件
使用
您可以使用参数助手函数轻松创建参数实例
$args = args(); // or if you want to pass some values and rules $args = args($values = array(), $rules = array()); // or you can use ::create static functions $args = Argument::create($values = array(), $rules = array());
参数实现了PHP接口,如"Argumentable, ArrayAccess, Iterator, IteratorAggregate, Countable",因此您可以轻松迭代参数或以数组方式访问元素,也可以计算参数数量
$args = args($values = array( 'key' => 'value' )); // to access an arguments you can use $args['key'] // or $args->get('key') // counting arguments count($args)
验证
您可以使用验证函数或调用对象作为函数(使用__invoke)轻松验证参数
$args = args(); $args->set('key', 'value'); // You can validate your args before if( ! $args->validate(function($failedFields) { // you can do whetever with failed fields .. }) ) class Example { public function needParams(Argumentable $args) { // Or you can validate here . if( ! $args->validate(function($failedFields) { // you can do whetever with failed fields .. }) ) } }