PHP 接口 40 个参数,过滤和验证怎么写法好?

2018-02-27 17:47:00 +08:00
 MaZiT

用 thinkphp5.1 框架对接别人的系统,需要 40 个参数,过滤和验证、还要测试接口。怎么写比较好点。。。

5998 次点击
所在节点    PHP
27 条回复
crazystory
2018-02-27 18:05:11 +08:00
40 个???execuse 咪??
killerv
2018-02-27 18:07:44 +08:00
需要那么多参数?
keller
2018-02-27 18:09:11 +08:00
👍
chinvo
2018-02-27 18:09:47 +08:00
这接口谁设计的,拖出去打死了
SoulSleep
2018-02-27 18:17:14 +08:00
一个 bean validator 一个参数。。
喔。。。java 玩法,php 一定有。em !

40 个参数,映射到一个 bean 上,继续 validator。。。。
java 玩法。。。
x86
2018-02-27 18:22:40 +08:00
40 个参数...写的啥玩意
MeteorCat
2018-02-27 18:38:32 +08:00
吓尿了
lauix
2018-02-27 18:43:38 +08:00
首先,这么多参数有点坑,不好维护,完全可以封装成 JSON 传递。

可以采用 装饰器模式进行过滤验证,具体怎么写自己百度。
mritd
2018-02-27 19:33:01 +08:00
啥,你再说一遍
HYSS
2018-02-27 19:35:40 +08:00
```php

$validatorRuleMap=[
'name'=>'validatorName',
'nickname'=>'validatorNickname',
];

foreach ($validatorRuleMap as $rule){
//取数据
//验证
}
```
zjsxwc
2018-02-27 19:38:46 +08:00
用表单校验相关的库就好了,这种情况大表单提交处理时很常见。

http://symfony.com/doc/current/validation.html
murmur
2018-02-27 19:41:15 +08:00
40 个参数如果只是格式校验还好 涉及到业务就自求多福吧
hermanzhu
2018-02-27 19:53:41 +08:00
40 个参数不建议流水账 foreach 调用 validator,这么些参数肯定能根据业务线进行分类,分好类再抽象出独立的 validator,造福后人……
kisama12
2018-02-27 20:17:22 +08:00
PHP 那么厉害的嘛……参数多于三个通常就封装起来了……
manhere
2018-02-27 20:27:39 +08:00
tp 有验证器啊,看手册!
abusizhishen
2018-02-27 20:59:21 +08:00
参数归类,按类验证
wwww961h
2018-02-27 21:05:22 +08:00
写成数组,可以用个二维的,同一类型的放在同一个二级数组里,然后循环来过滤,40 个参数真心有点多,
dobelee
2018-02-27 21:08:33 +08:00
什麼場景需要這麼多參數?為啥不用 json ?
Junjunya
2018-02-27 22:55:04 +08:00
好奇楼上大佬们说的为啥不用 json ,用了 json 不还是一个 40 个值的 hashMap 么 和 php 直接 $_GET / $_POST 获取到 40 个值的数组 有啥不一样么
murmur
2018-02-27 22:57:30 +08:00
@Junjunya json 对调试工具友好 传统 form 传个数组那个参数格式看着真心糟心

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/433228

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX