Laravel - Yerelleştirme

Laravel'in yerelleştirme özelliği, uygulamada kullanılmak üzere farklı dili destekler. Farklı dillerdeki tüm dizeleri bir dosyada saklamanız gerekir ve bu dosyalar şu adreste saklanır:resources/viewsdizin. Desteklenen her dil için ayrı bir dizin oluşturmalısınız. Tüm dil dosyaları, aşağıda gösterildiği gibi bir dizi anahtarlı dizge döndürmelidir.

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

Misal

Step 1 - Diller için 3 dosya oluşturun - English, French, ve German. İngilizce dosyayı şuraya kaydet:resources/lang/en/lang.php

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

Step 2 - Fransız dosyasını şuraya kaydedin resources/lang/fr/lang.php.

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

Step 3 - Almanca dosyasını şuraya kaydedin resources/lang/de/lang.php.

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

Step 4 - adlı bir denetleyici oluşturun LocalizationController aşağıdaki komutu yürüterek.

php artisan make:controller LocalizationController --plain

Step 5 - Başarılı bir yürütmeden sonra, aşağıdaki çıktıyı alacaksınız -

Step 6 - Aşağıdaki kodu dosyaya kopyalayın

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 - LocalizationController için bir yol ekleyin app/Http/routes.phpdosya. Yerelleştirmeden sonra çıktıyı farklı bir dilde görmek için kullanacağımız {locale} bağımsız değişkenini ilettiğimize dikkat edin.

app/Http/routes.php

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

Step 8- Şimdi, tüm farklı dilleri görmek için farklı URL'leri ziyaret edelim. Çıktıyı İngilizce olarak görmek için aşağıdaki URL'yi çalıştırın.

http://localhost:8000/localization/en

Step 9 - Çıktı aşağıdaki resimde gösterildiği gibi görünecektir.

Step 10 - Çıktıyı Fransızca olarak görmek için aşağıdaki URL'yi çalıştırın.

http://localhost:8000/localization/fr

Step 11 - Çıktı aşağıdaki resimde gösterildiği gibi görünecektir.

Step 12 - Alman dilinde çıktıyı görmek için aşağıdaki URL'yi çalıştırın

http://localhost:8000/localization/de

Step 13 - Çıktı aşağıdaki resimde gösterildiği gibi görünecektir.