如何在控制器的方法之间传递变量

Ste*_*veM -1 php laravel

我只是想在同一个Laravel控制器中的一种方法之间传递一个变量到另一个方法。我花了几个小时试图弄清楚这一点,但没有运气。我相信这很简单。在其他地方也有类似的答案,但我无法使它们起作用,因此想使其变得非常简单,以便我能够理解。

在下面的代码中,我只想添加输出$ variable(在本例中为数字1)。

例如,假设我在控制器中具有以下方法。

public function index()
{
$variable = 1;
}

public function show()
{
dd($variable);
}
Run Code Online (Sandbox Code Playgroud)

我只希望show函数以dd函数的形式输出dd输出1。谁能帮我一下。正如我所说,我敢肯定这很容易,只是想不通。

Dil*_*ara 7

类型1:您可以传递定义的变量

protected $variable;
public function index() {
    $this->variable= 1;
}

public function show() {
    echo $this->variable;
}
Run Code Online (Sandbox Code Playgroud)

类型2从一种方法调用另一种方法的另一种方法是

public function index() {
    $variable= 1;
    $this->show($variable);
}

public function show($id) {
    echo $id;
}
Run Code Online (Sandbox Code Playgroud)

类型3:您也可以使用会话

public function index() {
    $variable= 1;
    session()->set('variable', $variable);
}

public function show() {
    $variable = session()->get('variable');
    dd($variable);
}
Run Code Online (Sandbox Code Playgroud)