用 thinkphp5.1 框架对接别人的系统,需要 40 个参数,过滤和验证、还要测试接口。怎么写比较好点。。。
用 thinkphp5.1 框架对接别人的系统,需要 40 个参数,过滤和验证、还要测试接口。怎么写比较好点。。。
1
crazystory Feb 27, 2018
40 个???execuse 咪??
|
2
killerv Feb 27, 2018
需要那么多参数?
|
3
keller Feb 27, 2018
👍
|
4
chinvo Feb 27, 2018
这接口谁设计的,拖出去打死了
|
5
SoulSleep Feb 27, 2018 一个 bean validator 一个参数。。
喔。。。java 玩法,php 一定有。em ! 40 个参数,映射到一个 bean 上,继续 validator。。。。 java 玩法。。。 |
6
x86 Feb 27, 2018
40 个参数...写的啥玩意
|
7
MeteorCat Feb 27, 2018 via Android
吓尿了
|
8
lauix Feb 27, 2018 首先,这么多参数有点坑,不好维护,完全可以封装成 JSON 传递。
可以采用 装饰器模式进行过滤验证,具体怎么写自己百度。 |
9
mritd Feb 27, 2018 via iPhone
啥,你再说一遍
|
10
HYSS Feb 27, 2018
```php
$validatorRuleMap=[ 'name'=>'validatorName', 'nickname'=>'validatorNickname', ]; foreach ($validatorRuleMap as $rule){ //取数据 //验证 } ``` |
11
zjsxwc Feb 27, 2018
|
12
murmur Feb 27, 2018
40 个参数如果只是格式校验还好 涉及到业务就自求多福吧
|
13
hermanzhu Feb 27, 2018
40 个参数不建议流水账 foreach 调用 validator,这么些参数肯定能根据业务线进行分类,分好类再抽象出独立的 validator,造福后人……
|
14
kisama12 Feb 27, 2018 via Android
PHP 那么厉害的嘛……参数多于三个通常就封装起来了……
|
15
manhere Feb 27, 2018 via Android
tp 有验证器啊,看手册!
|
16
abusizhishen Feb 27, 2018 via Android
参数归类,按类验证
|
17
wwww961h Feb 27, 2018
写成数组,可以用个二维的,同一类型的放在同一个二级数组里,然后循环来过滤,40 个参数真心有点多,
|
18
dobelee Feb 27, 2018 via Android
什麼場景需要這麼多參數?為啥不用 json ?
|
19
Junjunya Feb 27, 2018
好奇楼上大佬们说的为啥不用 json ,用了 json 不还是一个 40 个值的 hashMap 么 和 php 直接 $_GET / $_POST 获取到 40 个值的数组 有啥不一样么
|
24
ZXCDFGTYU Feb 28, 2018
@MaZiT 非法参数在 Request::instance()->get()/Request::instance()->post()的时候已经过滤了,验证器是验证参数完整性的。安全在调用 get()/post()的时候处理了
|
25
NEETLEE Feb 28, 2018 thinkphp5 是有 validate 类的,你把你的校验规则按照[控制器名]=>[方法名=>[参数 1=>规则]]这样的结构写成数组存在 php 文件里,并且 rerurn 出来,然后 new 的时候需要验证的时候用 request 类可以拿到控制器名和方法名由此取到规则再传进去再验证就可以了。
这样的写法把规则和代码分离开,参数再多也不会显得乱 |