请问方法调用方法,return套娃,咋不显示值呢?

问题描述

我在控制器里,A函数调用B函数,B函数return 结果给A函数,然后A函数return json(值),显示空白,收不到B函数返回的值,请问咋整呢?

截图
截图

应该返回:请登录后操作,如果我在【1】代码那里return一下,就做不到代码重复利用,基本每行代码要判断两次错误

截图

  //检验用户
    public function checkUsers($access_token = ''){
        if(!$access_token){
            return json(['status' => 201,'msg' => '请登录后操作']);
        }
        $userData = object_array(Db::table('users')->where('access_token',$access_token)->first());
        if(!$userData){
            return json(['status' => 201,'msg' => '系统错误~,打开“系统设置”->“清除缓存”']);
        }
        $this->userData = $userData;
    }

    //保存用户资料
    public function editUserInfo(Request $request){
        $this->checkUsers($request->post('access_token'));
        return json($this->userData);
    }
550 5 0
5个回答

PHP甩JAVA一条街

截图

  • PHP甩JAVA一条街 2023-01-06

    如果return给调用者,就做不到代码重复利用,我得在调用者(有多个业务)代码里重复判断【请登录操作和系统错误之类的】

  • nitron 2023-01-06

    多种方式满足要求
    1.中间件处理
    2.抛异常后捕获处理

  • PHP甩JAVA一条街 2023-01-07

    还是得return?

箜篌

你需要在公共方法里抛出异常

  • PHP甩JAVA一条街 2023-01-07

    return?

  • 箜篌 2023-01-07

    你这个最好自定义一个异常类,不管是控制器层、模型层或者服务层都能直接把异常抛出

  • 箜篌 2023-01-07

    https://www.workerman.net/a/1429 参考这篇文章就可以,自定义很灵活

  • PHP甩JAVA一条街 2023-01-07

    好的,谢谢哥指点

咸鱼.php

请教下,你这个object_array是什么函数

PHP甩JAVA一条街

截图截图上面这个咋去掉呢?异常捕捉到了

PHP甩JAVA一条街

搞定,谢谢各位php大佬
截图

年代过于久远,无法发表回答
🔝