| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- <?php
- // +----------------------------------------------------------------------
- // | likeshop100%开源免费商用商城系统
- // +----------------------------------------------------------------------
- // | 欢迎阅读学习系统程序代码,建议反馈是我们前进的动力
- // | 开源版本可自由商用,可去除界面版权logo
- // | 商业版本务必购买商业授权,以免引起法律纠纷
- // | 禁止对系统程序代码以任何目的,任何形式的再发布
- // | gitee下载:https://gitee.com/likeshop_gitee
- // | github下载:https://github.com/likeshop-github
- // | 访问官网:https://www.likeshop.cn
- // | 访问社区:https://home.likeshop.cn
- // | 访问手册:http://doc.likeshop.cn
- // | 微信公众号:likeshop技术社区
- // | likeshop团队 版权所有 拥有最终解释权
- // +----------------------------------------------------------------------
- // | author: likeshopTeam
- // +----------------------------------------------------------------------
- namespace app\common\validate;
- use app\common\service\JsonService;
- use think\Validate;
- class BaseValidate extends Validate
- {
- public string $method = 'GET';
- /**
- * @notes 设置请求方式
- * @author 令狐冲
- * @date 2021/7/13 00:07
- */
- public function post()
- {
- if (!$this->request->isPost()) {
- JsonService::throw('请求方式错误,请使用post请求方式');
- }
- $this->method = 'POST';
- return $this;
- }
- /**
- * @notes 设置请求方式
- * @author 令狐冲
- * @date 2021/7/13 00:07
- */
- public function get()
- {
- if (!$this->request->isGet()) {
- JsonService::throw('请求方式错误,请使用get请求方式');
- }
- return $this;
- }
- /**
- * @notes 切面验证接收到的参数
- * @param null $scene 场景验证
- * @param array $validate_data 验证参数,可追加和覆盖掉接收的参数
- * @return array
- * @author 令狐冲
- * @date 2021/6/29 21:05
- */
- public function goCheck($scene = null, $validate_data = [])
- {
- //接收参数
- if ($this->method == 'GET') {
- $params = request()->get();
- } else {
- $params = request()->post();
- }
- //合并验证参数
- $params = array_merge($params, $validate_data);
- //场景
- if ($scene) {
- $result = $this->scene($scene)->check($params);
- } else {
- $result = $this->check($params);
- }
- if (!$result) {
- $exception = is_array($this->error) ? implode(';', $this->error) : $this->error;
- JsonService::throw($exception);
- }
- // 3.成功返回数据
- return $params;
- }
- }
|