Laravel Request :: create不能使用CLI的Request :: input

时间:2018-04-02 06:56:24

标签: php laravel-5

我需要从CLI调用一个使用Request :: input的方法,所以我不得不手动创建Request对象,下面的代码在我的情况下不起作用。你可以请一下建议吗?

$request = \Illuminate\Support\Facades\Request::create('script/run', 'POST');
\Illuminate\Support\Facades\Route::dispatch($request);
$request->request->add(['adjustment' => '10']);    

我试图从另一个类

调用该值
dd(\Illuminate\Support\Facades\Request::input('adjustment'));

输出显示为null但它应该显示值10

我也尝试了以下选项,它也没有用[/ p>]

$request = app('request');
$request->request->add(['adjustment' => '10']);
dd($request->all());

返回空数组。如果我能在这里添加输入,它将对我有用。

2 个答案:

答案 0 :(得分:0)

你几乎就在那里,但是当你创建请求时,你将它分配给一个变量,然而,当你去死并转储'adjust'的值时,你正在调用一个没有的新请求'调整'的价值

要获得此功能,只需从您分配给$request的请求中调用它。

dd($request->input('adjustment'));

答案 1 :(得分:0)

最后找到答案,我不得不使用merge而不是add。下面的代码对我有用。

$request = app('request');
$request->merge(['adjustment' => '10']);
dd(\Illuminate\Support\Facades\Request::all());