使用laravel将变量从一个控制器传递到另一个控制器

时间:2016-06-13 08:58:29

标签: php laravel-4

从一个控制器重定向到另一个控制器也可以传递变量吗?我的意思是我提交了函数,提交后我将重定向到url。然后在其他控制器中尝试根据变量显示一些信息。这是第一个控制器的重定向

return Redirect::to('/cart/payment/order/' . $order->order_id . '+' . $order->user_id);

然后在第二个控制器中

public function paymentView() {


    $order = Order::where('order_id', $orderId)->first();

    if (!$order) {
        App::abort(404);
    }

    $userID         = $order['user_id'];            
    $orderID        = $order['order_id'];
}

问题是如何获得$user_id$order_id

1 个答案:

答案 0 :(得分:1)

首先你的路线声明应该接受它们,类似这样,取决于你的路线:

Route::get('cart/payment/order/{orderID}/{userID}'...

然后Laravel将自动将它们注入您的控制器方法中:

public function paymentView( $orderID, $userID, ) {

我建议您的网址使用斜杠而不是加号:

return Redirect::to('/cart/payment/order/' . $order->order_id . '/' . $order->user_id);