2015-04-08 83 views

回答

3

這個怎麼樣:

<?php 
Route::get('/{order}', array("as" => "ordered", "uses" => '[email protected]'), function() use ($order) { 
     Session::put('order',$order') 
    }); 

更詳細的例子可以在這裏找到Anonymous functions例子#3從父範圍繼承變量

這裏重要的是注意使用關鍵字。它允許您傳遞在匿名函數外定義的變量。

編輯

我的壞,它似乎是我誤解了。試着這樣說:

<?php 
Route::get('/{order}', array("as" => "ordered", "uses" => '[email protected]'), function($order) { 
    Session::put('order',$order') 
}); 
+0

我嘗試過,但沒」工作。我需要獲得{order}的值並在函數中使用它。 – rjmcb

+0

我更新了我的答案。像這樣嘗試。 – Artamiel

2

只是改變以下..........

Route::get('/{order}','[email protected]'); 

而且在HomeController的............

public function ordered($order){ 
     ///////////////////your code here, use $order here 
    }); 
+0

這就是我現在使用的,我只想知道它是否可能。 – rjmcb

+0

爲什麼這麼多點? :) –

+0

這是可能的,如果你將你的功能轉移到控制器,並保持你的路線如Route :: get('/ {order}',array(「as」=>「ordered」,「uses」=>'HomeController @ order 「)); – Sohel0415

2

請點擊此 路線:

Route::get('/{order}','[email protected]'); 

控制器: 的HomeController-

function ordered($order) { 

} 

方法,你也可以傳遞多個參數

路線:

Route::get('/{order}/{id}','[email protected]'); 

控制器:

function ordered($order,$id) { 

    }