Php 我可以省略laravel路由中的可选参数吗?

Php 我可以省略laravel路由中的可选参数吗?,php,laravel,routing,Php,Laravel,Routing,以下是代码: Route::get('diagram', 'DiagramController@showDiagram'); Route::get('diagram/{type}', 'DiagramController@showDiagram'); Route::get('diagram/{type}/{template}', 'DiagramController@showDiagram'); Route::get('diagram/{type}/{template}/{offset}', '

以下是代码:

Route::get('diagram', 'DiagramController@showDiagram');
Route::get('diagram/{type}', 'DiagramController@showDiagram');
Route::get('diagram/{type}/{template}', 'DiagramController@showDiagram');
Route::get('diagram/{type}/{template}/{offset}', 'DiagramController@showDiagram');
下面是我希望它看起来的样子:

Route::get('diagram/{type}/{template}/{offset}', 'DiagramController@showDiagram');

有没有办法告诉Laravel上述所有参数都不必在url中给出?或者我必须像上面那样声明四行吗?

你不必为此写四行,检查一下Laravel上的

所以在你的情况下,你可以写

Route::get('diagram/{type?}/{template?}/{offset?}', 'DiagramController@showDiagram');
您只需在每个可选参数的末尾添加一个

的可能重复项