Php Laravel trans helper函数未拾取正确的文件
我正在拉维尔建立一个网站, 我让它获取浏览器语言,并相应地设置网站的语言 问题是,中的任何内容似乎都不会被翻译成 谁能帮我一下吗? 谢谢Php Laravel trans helper函数未拾取正确的文件,php,laravel,translation,language-translation,registrar,Php,Laravel,Translation,Language Translation,Registrar,我正在拉维尔建立一个网站, 我让它获取浏览器语言,并相应地设置网站的语言 问题是,中的任何内容似乎都不会被翻译成 谁能帮我一下吗? 谢谢 g3要实现这一点,您需要使用中间件来设置区域设置: 在app/http/middleware目录中创建localemidleware.php //LocaleMiddleware.php <?php namespace App\Http\Middleware; use Closure; use Illuminate\Session\Store as
g3要实现这一点,您需要使用中间件来设置区域设置: 在
app/http/middleware
目录中创建localemidleware.php
//LocaleMiddleware.php
<?php namespace App\Http\Middleware;
use Closure;
use Illuminate\Session\Store as Session;
use Illuminate\Contracts\Auth\Guard as Auth;
class LocaleMiddleware {
public function __construct(Session $session)
{
$this->session = $session;
}
//Languages available in your resources/lang
protected $languages = ['en','es', 'nl-be'];
public function handle($request, Closure $next)
{
$langlist = $_SERVER['HTTP_ACCEPT_LANGUAGE'];
// We just want the main language
$lang = substr($langlist,0,2);
if(isset($this->languages[$lang])){
app()->setLocale($lang);
}else{
//You may log this here
}
return $next($request);
}
}
/**
* The application's global HTTP middleware stack.
*
* @var array
*/
protected $middleware = [
\Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class,
.........
\App\Http\Middleware\LocaleMiddleware::class,
];
创建lang文件
您需要为要支持的所有语言创建单独的文件夹,并相应地翻译其中的文件,例如nl be\validation.php
您可以首先将resources/lang/en的内容转换为resources/lang/nl be,然后将nl be\validation.php`的内容转换为荷兰语等效内容
您能显示您迄今为止所做工作的代码吗?您需要为要支持的所有语言创建单独的文件夹,并进行相应的翻译。您可以先将resources/lang/en的内容转换为resources/lang/nl be,然后将nl be的内容翻译成荷兰语register.php
,English
和dutch
是链接:)如何?我不明白,你使用的是什么版本的Laravel 5,我的意思是在问题中这些是链接我刚刚在pastebin中看到了你的代码,我的建议是你应该始终在回答中包含你的代码以使其更清楚,pastebin是好的,但链接可能会在以后被破坏,而不是每个人都知道如何访问pastebin。你是如何设置你在拉威尔的语言环境的。如果正确设置语言环境,将使用正确的lang文件。我在这里回答了类似的问题:工作就像一种魅力!谢谢:DI知道如何创建lang文件:)可能对其他人有用:D