Laravel 5 如何将变量从一个控制器传递到另一个laravel

Laravel 5 如何将变量从一个控制器传递到另一个laravel,laravel-5,model-view-controller,Laravel 5,Model View Controller,我试图将一个变量从一个控制器传递到另一个控制器。我是这样做的- SomeController public function index(){ $var = 'variable'; return redirect()->route('toAnotherController')->with('var', $var); } public function index(){ echo $var; } Route.php Route::get('/anotherControl

我试图将一个变量从一个控制器传递到另一个控制器。我是这样做的-

SomeController

public function index(){
  $var = 'variable';
  return redirect()->route('toAnotherController')->with('var', $var);
}
public function index(){
  echo $var;
}
Route.php

Route::get('/anotherController', 'AnotherController@index')->name('toAnotherController');
另一个控制器

public function index(){
  $var = 'variable';
  return redirect()->route('toAnotherController')->with('var', $var);
}
public function index(){
  echo $var;
}
但是,这给出了一个错误“未定义变量$var”。 这里出了什么问题? 还有其他方法吗?

这将帮助您:

Route::get('/anotherController/{var}', 'AnotherController@index')->name('toAnotherController');

public function index($var){
  echo $var;
}
然后使用重定向:

  return redirect()->route('toAnotherController',[$var]);
祝你好运~~~

这将帮助你:

Route::get('/anotherController/{var}', 'AnotherController@index')->name('toAnotherController');

public function index($var){
  echo $var;
}
然后使用重定向:

  return redirect()->route('toAnotherController',[$var]);

祝你好运~~~

我希望现在还不算太晚。但我相信有一天这会对某人有所帮助!!! 在您的SomeController 添加此实例公共$attributes 添加要传递给另一个控制器的变量

$request->attributes->add(['var' => $request->var]);
您可以在需要的(另一个控制器)控制器上使用下面的代码同样地解决此问题

$var= app('request')->get('var');

N:B-Laravel 5.7。我不确定是否有早期版本

我希望这不会太晚。但我相信有一天这会对某人有所帮助!!! 在您的SomeController 添加此实例公共$attributes 添加要传递给另一个控制器的变量

$request->attributes->add(['var' => $request->var]);
您可以在需要的(另一个控制器)控制器上使用下面的代码同样地解决此问题

$var= app('request')->get('var');

N:B-Laravel 5.7。我不确定是否有早期版本

请记住,路由中的
{var}
意味着它是必需的。如果这是可选的,您可以将可选参数指定为
{var?}
。我也尝试过该方法来传递数据,但我遇到的问题是重定向(在传递数据时)。成功了,谢谢!请记住,routes中的
{var}
表示它是必需的。如果这是可选的,您可以将可选参数指定为
{var?}
。我也尝试过该方法来传递数据,但我遇到的问题是重定向(在传递数据时)。成功了,谢谢!这就是我一直在找的。谢谢,这是我一直在找的。谢谢