🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
#### 方法注入 如果你需要通过请求对象来扩展一些用法,可以使用方法注入功能,例如我们需要在当前请求对象中读取用户信息,就可以在应用公共文件中添加下面代码: ~~~ // 通过hook方法注入动态方法 Request::hook('user','getUserInfo'); ~~~ getUserInfo函数定义如下 ~~~ function getUserInfo(Request $request, $userId) { // 根据$userId获取用户信息 return $info; } ~~~ 要注入的方法的第一个参数必须是Request对象。 接下来,我们可以直接在控制器中使用: <?php namespace app\index\controller; use think\Controller; use think\Request; class Index extends Controller { public function index() { $info = $this->request->user($userId); } } 调用方法的时候不需要传入当前请求对象,会自动传入。