为了账号安全,请及时绑定邮箱和手机立即绑定

Laravel - 语言环境可选地作为 URL 中的第一个参数

Laravel - 语言环境可选地作为 URL 中的第一个参数

PHP
catspeake 2022-01-14 15:22:41
我更多来自普通 PHP 背景,但我开始接触 Laravel(和 Lumen)。我正在处理一个国际化项目并将 URL 结构放在一起。我是 Apple 示例的粉丝,即apple.com/mac在 Apple 的美国网站上为您提供 Mac 产品。apple.com/uk/mac在 Apple 的英国网站 (ie apple.com/{locale/?}route)上为您提供 Mac 产品Laravel 是否可以复制这种行为:第一个参数是我们已知的语言环境之一如果是这样,设置语言环境并继续如果不是,参数是否匹配我们注册的路由之一并继续我已经看到一些类似问题的答案,说语言环境作为可选参数 1 是不可能的,因为那样“路由器将不知道该做什么”,但有现实生活中的例子,Apple 是我的例子已经给出(以及在我从事的一些香草项目中),这是在哪里完成的。请问你能指教吗?
查看完整描述

1 回答

?
泛舟湖上清波郎朗

TA贡献1818条经验 获得超3个赞

因此,轻松解决此问题的方法是使用提到的包@BlackXero。


$localiseGroup = [

    'prefix' => LaravelLocalization::setLocale(),

    'middleware' => ['localeSessionRedirect', 'localizationRedirect',]

];


Route::group($localiseGroup, function() {


    Route::get('/mac', '<handler>');


});


// domain.com/mac and domain.com/es/mac would now work

如果您阅读文档,您将看到所有设置说明以使其按预期工作。


查看完整回答
反对 回复 2022-01-14
  • 1 回答
  • 0 关注
  • 117 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信