如何在laravel命名路由中添加可选参数?

时间:2017-05-24 12:33:51

标签: php laravel-4

使用Laravel 4.2并根据routing documentation

我们可以将命名路由定义为

Route::get('user/profile', array('as' => 'profile', 'uses' => 'UserController@showProfile'));

用另一种方式定义一个可选参数

Route::get('user/{name?}', function($name = null)
{
    return $name;
});

我想在命名路由中添加可选参数。如何结合两者?

2 个答案:

答案 0 :(得分:3)

试试这个

Route::get('user/{name?}', function($name = null)
{
    return $name;
})->name('foo');

更新

抱歉,Laravel 4.2中不存在名称方法 你可以用另一种方式做到这一点

Route::get('user/profile/{name?}', array('as' => 'profile', 'uses' => 'UserController@showProfile'))

Route::get('user/profile/{name?}', array('as' => 'profile', function($name = null) {
// your code here 
})

答案 1 :(得分:0)

您可以为所有功能定义通用路线。 像:

Route::controller('uses', 'UserController');

使用可选参数定义函数:

  public function getView($param = 0)
     //your code here
   }

使用它你可以在你需要的函数中使用可选参数。借助ajax调用函数。