Laravel:使用url参数进行控制器操作

时间:2015-09-30 07:56:05

标签: php laravel routes

抱歉,我是一名新手 - 这是我的路线代码:

Route::get('shop/{id}', function($id)
{
});

$id表示商店类别ID,我想将ID传递给控制器​​操作,例如shop\StartController@showarticles

我只习惯这种语法:

Route::get('/', 'shop\StartController@show');

我该怎么做? 感谢

4 个答案:

答案 0 :(得分:3)

只需将其作为参数传递(假设使用Laravel 5.1):

控制器:

class StartController extends Controller
....
public function show($id)
{
   //add controller logic
}

路线:

//Asuming that the namespace `shop` is loaded
Route::get('/', 'StartController@show');

查看更多here

答案 1 :(得分:2)

您可以轻松地将ID传递给控制器​​

Route::get('shop/{id}','UserController@show');

您的控制器

class UserController extends BaseController {


public function show($id)
{
    echo "hi its my first exercise in laravel".$id;
}

答案 2 :(得分:0)

您可以使用闭路器作为您的路线并按照以下方式呼叫控制器:

Route::get('shop/{id}', function($id)
    return App::make('StartController')->showarticles($id);
}));

答案 3 :(得分:0)

您的控制器就像

Route::get('shop/{id}', 'shop\StartController@showarticles');

你的班级功能就像

class StartController extends Controller
....
public function show($id)

或者您正在使用最新版本

class StartController extends Controller
....
public function show(Request $request, $id)