📜  Laravel-本地化

📅  最后修改于: 2020-10-23 08:04:58             🧑  作者: Mango


Laravel的本地化功能支持在应用程序中使用不同的语言。您需要将所有不同语言的字符串存储在一个文件中,并且这些文件存储在resources / views目录中。您应该为每种支持的语言创建一个单独的目录。所有语言文件都应返回一个键控字符串数组,如下所示。

 'Welcome to the application'
];

步骤1-为语言创建3个文件-英语,法语德语。将英语文件保存在resources / lang / en / lang.php

 'Laravel Internationalization example.'
   ];
?>

第2步-将法语文件保存在resources / lang / fr / lang.php

 'Exemple Laravel internationalisation.'
   ];
?>

步骤3-将德语文件保存在resources / lang / de / lang.php

 'Laravel Internationalisierung Beispiel.' 
   ];
?>

步骤4-通过执行以下命令来创建一个名为LocalizationController的控制器。

php artisan make:controller LocalizationController --plain

步骤5-成功执行后,您将收到以下输出-

本地化控制器

步骤6-将以下代码复制到文件

app / Http / Controllers / LocalizationController.php

app / Http / Controllers / LocalizationController.php

setLocale($locale);
      
      //Gets the translated message and displays it
      echo trans('lang.msg');
   }
}

步骤7-app / Http / routes.php文件中为LocalizationController添加路由。注意,我们在localization /之后传递了{locale}参数,我们将用它来查看不同语言的输出。

app / Http / routes.php

Route::get('localization/{locale}','LocalizationController@index');

步骤8-现在,让我们访问不同的URL以查看所有不同的语言。执行以下URL以英语查看输出。

http://localhost:8000/localization/en

步骤9-输出将如下图所示。

Laravel国际化

步骤10-执行以下URL以查看法语输出。

http://localhost:8000/localization/fr

步骤11-输出将如下图所示。

法国的例子

步骤12-执行以下URL以查看德语输出

http://localhost:8000/localization/de

步骤13-输出将如下图所示。

德国的例子