Q
更改语言5
3
A
回答
9
的resources/lang
文件夹包含本地化文件。文件名称对应于它将被使用的视图。为了得到这个文件的值,你可以简单地使用下面的代码:如果你想实现语言选择的可能性
Lang::get('localization_file_name.variable_name');
,你只需要几个简单的步骤申请:
在
config/app.php
添加以下代码:'locale' => 'ru', 'locales' => ['ru', 'en'],
语言环境的名称可以是任何。
在
app/Http/Middleware
中创建一个名为Locale.php
的新文件。 文件的内容应该是这样的:<?php namespace App\Http\Middleware; use Closure; use App; use Config; use Session; class Locale { /** * Handle an incoming request. * * @param \Illuminate\Http\Request $request * @param \Closure $next * @return mixed */ public function handle($request, Closure $next) { $raw_locale = Session::get('locale'); if (in_array($raw_locale, Config::get('app.locales'))) { $locale = $raw_locale; } else $locale = Config::get('app.locale'); App::setLocale($locale); return $next($request); } }
在
app/Http/Kernel.php
在$ middlewareGroupsarray加入这一行:\App\Http\Middleware\Locale::class,
在
routes/web.php
附加:Route::get('setlocale/{locale}', function ($locale) { if (in_array($locale, \Config::get('app.locales'))) { Session::put('locale', $locale); } return redirect()->back(); });
0
Laravel有一个localization模块。
基本上你创建一个文件,例如:resources/lang/en/login.php
并把
return [ 'header' => 'Login' ];
且模板中使用@lang('login.header')
而不是Login
。
您可以在/resources/lang/en
目录中使用多少个文件,并使用@lang
刀片指令将您的文件名(不带扩展名)和期望值用圆点分开。
相关问题
- 1. 在Unity 5中更改语言(DateTime.Now.DayOfWeek)
- 2. 更改语言
- 3. 更改语言
- 4. 更改语言
- 5. Django:i18n - 更改语言
- 6. Yii2 - 更改语言
- 7. TinyMCE更改语言
- 8. FolderBrowserDialog更改语言
- 9. Ajax更改语言
- 10. NSSpeechSynthesizer更改语言
- 11. Android更改语言
- 12. 更改Behat语言
- 13. Android - 更改语言环境(语言)
- 14. 防止语言环境更改后的应用语言更改
- 15. 作为设备语言更改更改应用程序语言
- 16. 更改应用语言更改的文本框输入语言
- 17. 更改语言更改徽标Opencart
- 18. laravel的语言5
- 19. 更改带有id属性的语言网址asp.net mvc 5
- 20. 更改Flex组件语言
- 21. dateDropdown更改语言属性
- 22. 更改Android语言监听
- 23. zf2动态更改语言
- 24. android更改语言日期
- 25. 更改ReCaptcha语言OnClick
- 26. TabActivity不会更改语言
- 27. 更改语言laravel filemanager
- 28. 在TinyMCE中更改语言
- 29. 如何更改SAPUI5语言?
- 30. 更改语言动态codeigniter
https://laravel.com/docs/5.4/localization – Sebastian