gpt4 book ai didi

Laravel 4 多语言网站

转载 作者:行者123 更新时间:2023-12-02 16:56:20 27 4
gpt4 key购买 nike

我正在尝试实现一个多语言 Laravel 4 网站,在 url 中包含语言代码( mywebsite.com/en/home 和 mywebsite.com/de/home )

我看到了一些选项,例如过滤所有请求并检查第一个参数是否是语言代码之一。

我也检查过 Packagist,但没有找到已经可以完成工作的东西。

有没有更好的实现方法?

谢谢

最佳答案

最后,我在 config/app.php 中创建了一个配置变量

'available_language' => array('en', 'fr', 'es'),

在filters.php中我检测浏览器语言:

Route::filter('detectLang', function($lang = "auto")
{
if($lang != "auto" && in_array($lang , Config::get('app.available_language')))
{
Config::set('app.locale', $lang);
}else{
$browser_lang = !empty($_SERVER['HTTP_ACCEPT_LANGUAGE']) ? strtok(strip_tags($_SERVER['HTTP_ACCEPT_LANGUAGE']), ',') : '';
$browser_lang = substr($browser_lang, 0,2);
$userLang = (in_array($browser_lang, Config::get('app.available_language'))) ? $browser_lang : Config::get('app.locale');
Config::set('app.locale', $userLang);
}
});

然后在routes.php中我可以检测语言或强制它:

Route::get('/', array(
'before' => 'detectLang()', // auto-detect language
function(){
...
})
);

Route::get('/', array(
'before' => 'detectLang("fr")', // force language to "fe"
function(){
...
})
);

关于Laravel 4 多语言网站,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14793008/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com