Php 可选参数索引路由
我希望在索引路由上有一个可选参数,如下所示:Php 可选参数索引路由,php,laravel,laravel-5,lumen,Php,Laravel,Laravel 5,Lumen,我希望在索引路由上有一个可选参数,如下所示: $app->get('/{name?}', function ($name) { //Do Something here }); 我基本上想检查一下是否提供了一个参数。如果是,则返回特定视图,如果不是,则返回标准索引视图。就我的生活而言,我不能让它工作,更可能做一些愚蠢的事情!任何帮助都将不胜感激 首先,您需要使控制器函数中的$name参数为可选参数,以便在没有提供name时可以工作。然后,根据参数是否设置,可以返回不同的视图:
$app->get('/{name?}', function ($name) {
//Do Something here
});
我基本上想检查一下是否提供了一个参数。如果是,则返回特定视图,如果不是,则返回标准索引视图。就我的生活而言,我不能让它工作,更可能做一些愚蠢的事情!任何帮助都将不胜感激 首先,您需要使控制器函数中的$name参数为可选参数,以便在没有提供name时可以工作。然后,根据参数是否设置,可以返回不同的视图:
$app->get('/{name?}', function ($name = null) {
if (is_null($name)) {
return view('index');
}
else {
return view('some_other_view');
}
});
注意:在我看来,如果您创建了两个单独的路由,一个用于索引,另一个采用name参数,那么它将更具可读性,因为您的应用程序在这两种情况下的行为似乎完全不同。首先,您需要在控制器函数中使$name参数成为可选参数,以便在未提供name时它可以工作。然后,根据参数是否设置,可以返回不同的视图:
$app->get('/{name?}', function ($name = null) {
if (is_null($name)) {
return view('index');
}
else {
return view('some_other_view');
}
});
注意:在我看来,如果您创建了两个单独的路由,一个用于索引,另一个采用name参数,那么它将更具可读性,因为您的应用程序在这两种情况下的行为似乎完全不同。您好,jedrzej,我最终按照您的建议使用了两个单独的路由,效果不错。谢谢你的帮助!嗨,jedrzej,我最终按照你的建议选择了两条不同的路线,效果不错。谢谢你的帮助!