首页 > 解决方案 > How can I empty a request on Laravel Controller?

问题描述

   public function product(Request $request)
    {
        $name = $request->['name'];
        $price = $request->['price'];
  /*I want to clear the $request first as I want to send the request to other function*/

        $request->merge(['city' => $city,'id' => $id]);

     ...
    }    

How can I clear the $request contents.

I tried

$request->only(['']);

it's no use!

标签: controllerrequestlaravel-5.6

解决方案


你可以试试这个:

public function yourFunction(Request $request)
{
        dump('Pass Blank Array');
        dump($request->only([]));
        dd($request->all());
}

在此处输入图像描述

或者

public function yourFunction(Request $request)
{
    dump('Before Flash');
    dump($request);
    $request = $request->flash();
    dump('After Flash');
    dd($request);
}

在此处输入图像描述

  • 之后flash()你不能从变量中访问$request->all()或任何其他东西。$request

  • 如果要使用only(),则需要传递空白数组,例如$request->only([]). 通过使用此空数组,您将获得空的$request变量数组。

笔记

  1. $request->flash()重置变量的所有详细信息。
  2. $request->only([])只返回选定的值传入数组。

我希望这能帮到您!


推荐阅读