Laravel 有 n 个参数的路由

Laravel Route with n parameters

我有类别,每个类别可以有子类别。

所以我有这条路线:

Route::get('category/{param1}/{param2?}', 'CategoryController@show');

但是当子类别也有子类别等等时怎么办?有没有办法在不硬编码可能的潜艇数量的情况下做到这一点?

对于控制器,我可以像这样使用 splat 运算符:

public function show(...$param) {

}

您必须接受它作为一个单独的路线段,然后自己拆分它:

Route::get('category/{params}', 'CategoryController@show')->where('params', '.*');
public function show($params) {
    $params = explode('/', $params);
}