LARAVEL如何创建无限参数的路线?

时间:2016-02-11 10:53:34

标签: php laravel laravel-5 laravel-5.1

我想要路线:

Route::get('/{slug}/{slug-2}/{slug-3}/../{slug-n}', ['as' => 'slug',   'uses' => 'SlugController@slug']);

如何用laravel定义它甚至可能?

2 个答案:

答案 0 :(得分:7)

可能

Route::get('{slug}/{slugNum?}', 'SlugController@slug')->where('slugNum', '(.*)');

在你的控制器中,你需要将slugNum分成一个数组(爆炸)

public function getPage($slug, $slugNum = null)
    {
        if($slugNum) 
        {
            $slugNum = explode('/', $slugNum);
            // all your slugs here.. to play with
        }
    }

我知道这将适用于4!

答案 1 :(得分:-1)

Route::get('/slug/{slugNum}', [
//rest of the route
]);

因为,slugnum是我们的参数,你可以从它自己的原点分配它,或者根据输入多次动态调用路由。如果你想传递一个参数数组,请使用explode()(如上所示) )。无论哪种方式,它都会起作用。