Laravel - lokalizacja

Funkcja lokalizacji Laravel obsługuje różne języki używane w aplikacji. Musisz przechowywać wszystkie ciągi znaków w innym języku w pliku, a te pliki są przechowywane pod adresemresources/viewsinformator. Powinieneś utworzyć osobny katalog dla każdego obsługiwanego języka. Wszystkie pliki językowe powinny zwracać tablicę łańcuchów z kluczami, jak pokazano poniżej.

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

Przykład

Step 1 - Utwórz 3 pliki dla języków - English, French, i German. Zapisz plik w języku angielskim wresources/lang/en/lang.php

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

Step 2 - Zapisz plik francuski w resources/lang/fr/lang.php.

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

Step 3 - Zapisz niemiecki plik w resources/lang/de/lang.php.

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

Step 4 - Utwórz kontroler o nazwie LocalizationController wykonując następujące polecenie.

php artisan make:controller LocalizationController --plain

Step 5 - Po pomyślnym wykonaniu otrzymasz następujące dane wyjściowe -

Step 6 - Skopiuj następujący kod do pliku

app/Http/Controllers/LocalizationController.php

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');
   }
}

Step 7 - Dodaj trasę dla LocalizationController w app/Http/routes.phpplik. Zauważ, że przekazujemy argument {locale} po lokalizacji /, którego użyjemy do wyświetlenia wyniku w innym języku.

app/Http/routes.php

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

Step 8- Teraz przejdźmy do różnych adresów URL, aby zobaczyć wszystkie języki. Uruchom poniższy adres URL, aby wyświetlić dane wyjściowe w języku angielskim.

http://localhost:8000/localization/en

Step 9 - Dane wyjściowe będą wyglądać tak, jak pokazano na poniższej ilustracji.

Step 10 - Uruchom poniższy adres URL, aby wyświetlić dane wyjściowe w języku francuskim.

http://localhost:8000/localization/fr

Step 11 - Dane wyjściowe będą wyglądać tak, jak pokazano na poniższej ilustracji.

Step 12 - Uruchom poniższy adres URL, aby wyświetlić dane wyjściowe w języku niemieckim

http://localhost:8000/localization/de

Step 13 - Dane wyjściowe będą wyglądać tak, jak pokazano na poniższej ilustracji.