验证器很好用,可以严格的控制输入,而且$data,返回的就是数组,可以直接使用,但存在一个问题 没有传值的会自动默认为null,而我希望可以设置默认值,比如page参数,如果没有传的话,可以设置默认为10,这里我建议添加一个defaule()方法来实现。 我跟踪了input() 发现方法在workman的包中,所以不好直接更改。
这里写搜到的方案及不适用原因
欢迎pr
大佬,帮忙合并下 https://github.com/walkor/validation/pull/1 按需求添加了,并且合并了Respect/Validation最新的2.3版本,有了phone验证(https://www.workerman.net/q/8062)等 'phone' => v::phone('cn')->setDefault('16687967488')->setName('手机号')
非常感谢,已经合并,版本 3.1.0
👍👍
大佬,在合并下https://github.com/walkor/validation/pull/3 input 方法功能都做到这了上次提交的时候,一下子没有想到会有多维的验证场景,配合input和默认值的话,强制实现复杂多维格式的数据输入控制。
function addRule(Request $request, AuthService $authService){ $data = v::input([], [ 'app_id' => v::alnum()->setDefault($request->route->param('app_id'),true)->setName('应用名'), 'data' => v::input($request->all(), [ 'website_id' => v::intVal()->setDefault(0,true)->setName('站点id'), 'rule' => v::stringVal()->setName('api对外路径'), 'title' => v::stringVal()->setName('api接口名称'), ]) ]); dump($data); return toTrue($authService->addRule($data)); }
感谢
好的 已经合并
好的,谢谢
@walkor 大佬,我推送了一个新的优化 1、添加了mobile用于国内手机号验证,官方的phone会把电话号码也验证通过 2、接口添加了setDefault,让使用->setDefault的方法后,ide也能自动跟踪,方便开发 3、input判断,添加了判断输入值是否\Respect\Validation\Validator,不是的话就直接赋值.
$data = v::input($request->post(), [ 'aaa' => 1, 'phone' => v::optional(v::mobile())->setTemplate('未绑定/找到手机号'), 'code' => v::stringType()->notEmpty()->setName('验证码'), 'type' => v::intVal()->setDefault($this->data['type'],true)->setName('验证码类型'), ]);
看下是否帮忙合并下?谢谢
感谢,已经合并
欢迎pr
大佬,帮忙合并下 https://github.com/walkor/validation/pull/1
按需求添加了,并且合并了Respect/Validation最新的2.3版本,有了phone验证(https://www.workerman.net/q/8062)等
'phone' => v::phone('cn')->setDefault('16687967488')->setName('手机号')
非常感谢,已经合并,版本 3.1.0
👍👍
大佬,在合并下https://github.com/walkor/validation/pull/3
input 方法功能都做到这了上次提交的时候,一下子没有想到会有多维的验证场景,配合input和默认值的话,强制实现复杂多维格式的数据输入控制。
感谢
好的 已经合并
好的,谢谢
@walkor 大佬,我推送了一个新的优化
1、添加了mobile用于国内手机号验证,官方的phone会把电话号码也验证通过
2、接口添加了setDefault,让使用->setDefault的方法后,ide也能自动跟踪,方便开发
3、input判断,添加了判断输入值是否\Respect\Validation\Validator,不是的话就直接赋值.
$data = v::input($request->post(), [
'aaa' => 1,
'phone' => v::optional(v::mobile())->setTemplate('未绑定/找到手机号'),
'code' => v::stringType()->notEmpty()->setName('验证码'),
'type' => v::intVal()->setDefault($this->data['type'],true)->setName('验证码类型'),
]);
看下是否帮忙合并下?谢谢
感谢,已经合并