Laravel 本地化

Laravel 本地化

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

<?php
return [
   'welcome' => 'Welcome to the application'
];

示例

步骤1 - 创建三个语言文件 – 英语、法语德语 。将英语文件保存在 resources/lang/en/lang.php 中。

<?php
   return [
      'msg' => 'Laravel Internationalization example.'
   ];
?>

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

<?php
   return [
      'msg' => 'Exemple Laravel internationalisation.'
   ];
?>

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

<?php
   return [
      'msg' => 'Laravel Internationalisierung Beispiel.' 
   ];
?>

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

php artisan make:controller LocalizationController --plain

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

Laravel 本地化

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

app/Http/Controllers/LocalizationController.php

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers\Controller;

class LocalizationController extends Controller {
   public function index(Request request,locale) {
      //set’s application’s locale
      app()->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 - 输出将会如下图所示。

Laravel 本地化

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

http://localhost:8000/localization/de

步骤13 − 输出如下图所示。

Laravel 本地化

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程