Laravel 5 Illuminate\Http\Request 有不允许静态调用的方法

2022-08-30 18:57:23

我正在尝试从我的一个控制器调用 Illuminate\Http\Request has 方法。

Request::has('fields')

完全按照文档,但我得到一个错误抛出:

非静态方法 Illuminate\Http\Request::has() 不应静态调用,前提是从不兼容的上下文中$this

我不确定我在这里做错了什么,我试图尽可能地遵循文档。


答案 1

问题是你使用了错误的类。您需要导入立面:Request

use Illuminate\Support\Facades\Request;

答案 2

使用照明\支持\立面\请求;使用立面,这不是很好的做法。应使用 Illuminate\Http\Request;并通过方法或构造函数(即)获取可用的请求。

public function __construct(Request $request) {
    $this->request = $request;
}

然后在方法中使用它,即。

public function checkText() {
   $txt = $this->request->has('txt'); 
   return $txt;
}

推荐