如何在Laravel中声明无限参数?

时间:2015-07-14 13:18:50

标签: php laravel laravel-5 laravel-routing

有没有办法在Laravel 5的路由中声明无限数量的参数,类似于Codeigniter?

我将构建一个大型应用程序,并且无法为每个函数声明路径文件中的每个参数。我尝试了很多,但没有得到任何解决方案。

1 个答案:

答案 0 :(得分:11)

您可以使用此

//routes.php
Route::get('{id}/{params?}', 'YourController@action')->where('params', '(.*)');

请记住将上面的内容放在routes.php文件的最末端(底部),因为它就像是一个“全部捕获”的文件。路线,所以你必须拥有所有更具体的'首先定义路线。

//controller 
class YourController extends BaseController {

    public function action($id, $params = null)
    {
        if($params) 
        {
            $params = explode('/', $params);
            //do stuff 
        }
    }
}