1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
方法注入 如果你需要在Request请求对象中添加自己的方法,可以使用Request对象的方法注入功能,例如: // 通过hook方法注入动态方法 Request::hook('user','getUserInfo'); getUserInfo函数定义如下 function getUserInfo(Request $request, $userId) { // 根据$userId获取用户信息 return $info; } 接下来,我们可以直接在控制器中使用: public function index() { $info = Request::instance()->user($userId); } 属性注入 可以动态注入当前Request对象的属性,方法: // 动态绑定属性 Request::instance()->bind('user',new User); // 或者使用 Request::instance()->user = new User; 获取绑定的属性使用下面的方式: Request::instance()->user; 如果控制器注入请求对象的话,也可以直接使用 $this->request->user; 或者使用助手函数: request()->user; |