php – Laravel 5,子域路由,带可选参数

php – Laravel 5,子域路由,带可选参数,第1张

概述我刚刚开始学习Laravel 5并尝试创建多语言网站,并希望为该语言使用不同的域名,因此en.example.app指向英语版本,es.example.app指向西班牙语等等.我使用路由组,下面是我的代码. Route::group(['domain' => '{domain}.example.app'], function() { Route::get('/', function () 我刚刚开始学习Laravel 5并尝试创建多语言网站,并希望为该语言使用不同的域名,因此en.example.app指向英语版本,es.example.app指向西班牙语等等.我使用路由组,下面是我的代码.
Route::group(['domain' => '{domain}.example.app'],function() {    Route::get('/',function () {        return vIEw('index');    });    Route::get('test',function(){        return vIEw('index');    });});

它适用于除example.app之外的所有域.不幸的是,可选参数{domain?}不适用于子域,我不想复制这样的路由.

Route::get('/',function () {    return vIEw('index');});Route::get('test',function(){    return vIEw('index');});Route::group(['domain' => '{domain}.example.app'],function(){        return vIEw('index');    });});

有人可以建议如何避免这种重复吗?

多数民众赞成{domain} .example.app需要一个.在example.app之前.

你可以删除.并为域参数添加约束,使其至少为1.

所以代码看起来像

Route::group(['domain' => '{domain}example.app'],function($group) {    Route::get('/',function ($domain) {        //code    }) ;    // more routes    foreach($group->getRoutes() as $route){        $route->where('domain','[a-z]+\.{0,1}');    }});

附: :我不知道我的正则表达式是否正确.

总结

以上是内存溢出为你收集整理的php – Laravel 5,子域路由,带可选参数全部内容,希望文章能够帮你解决php – Laravel 5,子域路由,带可选参数所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1265291.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-08
下一篇 2022-06-08

发表评论

登录后才能评论

评论列表(0条)

保存