ThinkPHP 5.1 Trait代码复用和正确引用第三方extend类

利用php 5.4以上版本可以使用的Trait封装APP接口返回的方法,在TinkPHP 5.1中extend是自己重用的代码,vendor主要是通过composer加载的代码;因此,我们的代码放在extend中,新建一个traits文件夹,在里面新建一个文件:ResponseJson.php。其完整的代码如下:

jsonResponse($code, $message, $data);
    }

    // App接口请求成功时的返回
    public function jsonSuccessData($data = []) {
        return $this->jsonResponse(0, 'Success', $data);
    }

    // App接口请求封装
    private function jsonResponse($code, $message, $data = []) {
        $content = [
            'code'  => $code,
            'msg'   => $message,
            'data'  => $data,
        ];
        return json_encode($content);
    }
}

我们在测试控制器中测试引入trait的代码:

jsonSuccessData();
    }
}

在PHP中使用Trait是绝对没有问题的,只要版本在5.4以上!但是在ThinkPHP 中,如何引用第三方的问题,即正确的引用是问题!需要注意的是:
(1)引用Trait须在Class下,上例中Test类已经继承了Valid就不能继承其他类;
(2)USE引用:根号+命名空间+类名(Trait名)

你可能感兴趣的:(ThinkPHP 5.1 Trait代码复用和正确引用第三方extend类)