laravel - 在 Laravel 5 中更改语言

标签 laravel multilingual laravel-blade

我刚开始使用 Laravel 5.4,在 login.blade.php 我有

enter image description here

我不喜欢在 html 代码中放置纯文本,是否有解决方案可以让单独的 lang 文件中的所有文本动态使用它们?

谢谢

最佳答案

resources/lang文件夹包含本地化文件。文件名对应于将使用的 View 。为了从这个文件中获取一个值,你可以简单地使用以下代码:
`Lang::geConfig;
使用 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');
         $raw_locale = $request->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$middlewareGroups=[ ... ]添加以下行:\App\Http\Middleware\Locale::class,
  • routes/web.php添加:
    Route::get('setlocale/{locale}', function ($locale) {
      if (in_array($locale, \Config::get('app.locales'))) {
        session(['locale' => $locale]);
      }
      return redirect()->back();
    });
    
  • 关于laravel - 在 Laravel 5 中更改语言,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42395481/

    相关文章:

    jquery - Laravel在ajax中出现mysql错误

    php - 如何调试 Laravel 框架?

    php - 如何使用 anchor 标记在 laravel 中路由?

    mysql - Laravel 在 Blade 中查询数据库

    php - Laravel 4 - 如何在没有父 View 的情况下渲染 @extends ('parent' 的 subview

    javascript - 如何在 Javascript Laravel Blade 中编写路由 URL?

    php - 使用 Laravel HasManyThrough 关系获取模型 ID 和更新字段时出错

    database - 基于语言的 URL 和数据库路由

    javascript - 静态 Html 网站 - Bootstrap - 多语言支持

    android - 在 Android 中使用不同语言的大文本文件