我有几个相同的页面,但有不同的网址。如何为路由设置这些别名? 到目前为止,我只看到以下方法:
Route::get('/alias1', 'HomeController@someAction');
Route::get('/alias1.html', 'HomeController@someAction');
Route::get('/alias1.php', 'HomeController@someAction');
Route::get('/alias4', 'HomeController@someAction');
有没有更好的方法来设置别名?
最佳答案
您可以使用正则表达式约束轻松约束路由参数的格式:
Route::get('{alias}', 'HomeController@someAction')
->where('alias', 'alias1|alias1.html|alias1.php|alias4');
public function someAction($alias)
{
...
}
仅当路径是您的 4 个别名之一时,该路由才会匹配。
Laravel 6.x Docs - Routing - Parameters - Regular Expression Constraints 哪里
关于php - 在 Laravel 中为路由设置别名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58851507/