将数组传递给 Redirect::action in laravel


Pass an array to Redirect::action in laravel

我正在尝试将数组从一个函数传递到laravel中的另一个函数。

在我的PageController.php里,我有

public function show($code, $id){
 //some code
  if(isset($search))
   dd($search);
}

和另一个功能

public function search($code, $id){
//some queries 
$result = DB::table('abd')->get();
return Redirect::action('PageController@show, ['search'=>$search]);
}

但这会给我一个这样的错误:ErrorException (E_UNKNOWN) Array to string conversion

我正在使用拉拉维尔。

您也许可以通过序列化传递 URL 来让它工作,但我宁愿将其存储在会话变量中。会话类有一个名为 flash 的不错方法,它将为下一个请求保留变量,然后自动删除它。

此外,这只是一个猜测,您可能需要为此使用 index 操作,因为show需要特定资源的 id。

public function search($code, $id){
    //some queries 
    $result = DB::table('abd')->get();
    Session::flash('search', $search); // or rather $result?
    return Redirect::action('PageController@index');
}
public function index($code){
    //some code
    if(Session::has('search')){
        $search = Session::get('search');
        dd($search);
    }
}