Php 如何向laravel命名路由添加可选参数?

Php 如何向laravel命名路由添加可选参数?,php,laravel-4,Php,Laravel 4,使用Laravel 4.2并根据 我们可以将命名路由定义为 Route::get('user/profile', array('as' => 'profile', 'uses' => 'UserController@showProfile')); 并用另一种方式定义一个可选参数 Route::get('user/{name?}', function($name = null) { return $name; }); 我想向命名路由添加一个可选参数。如何将两者结合起来?试试

使用Laravel 4.2并根据

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

Route::get('user/profile', array('as' => 'profile', 'uses' => 'UserController@showProfile'));
并用另一种方式定义一个可选参数

Route::get('user/{name?}', function($name = null)
{
    return $name;
});
我想向命名路由添加一个可选参数。如何将两者结合起来?

试试这个

Route::get('user/{name?}', function($name = null)
{
    return $name;
})->name('foo');
更新 抱歉,Laravel 4.2中不存在名称方法 你可以用另一种方式来做

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

您可以为所有功能定义通用路由。。 比如:

并使用可选参数定义函数:

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

使用此选项,您可以在需要的函数中使用可选参数。借助ajax调用函数。

这不是命名路由。它正在尝试调用路由“name”。我想用可选参数选择一个控制器和他的方法。在laravel 5.4中,你可以调用name方法来命名路由:)super这就是我想要的。只是我得等一会儿才能接受你的回答。太好了,非常感谢,别忘了把它标记为已解决;)据我所知,一条路线是做不到的。但是你可以用两个指向同一个控制器的方法。
  public function getView($param = 0)
     //your code here
   }