1. Go to this page and download the library: Download webnuvola/laravel-i18n library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
webnuvola / laravel-i18n example snippets
return [
/*
|--------------------------------------------------------------------------
| Available regions
|--------------------------------------------------------------------------
|
| List of languages and countries to view your site in the format {language}-{country}.
| Available languages: https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes
| Available countries: https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2
| Examples: en-us, en-gb, it-it, ...
|
*/
'regions' => [
'en-us',
'en-gb',
],
/*
|--------------------------------------------------------------------------
| Default region
|--------------------------------------------------------------------------
|
| The default region that will be assigned if running from console or current
| route is not i18n. If null, the first element of regions will be used
| as default.
|
*/
'default' => null,
];
use Illuminate\Routing\Router;
use Webnuvola\Laravel\I18n\Facades\I18nRoutes;
I18nRoutes::group(static function (Router $router): void {
Route::get('/', [HomeController::class, 'show'])->name('home');
Route::get('/profile', [ProfileController::class, 'show'])->name('profile.show');
});
use Webnuvola\Laravel\I18n\Facades\I18n;
I18n::setRegion('en-us');
I18n::getRegion(); // en-us
I18n::getCountry(); // us
I18n::getLanguage(); // en
I18n::setRegion('en-us');
route('profile.show'); // /profile
i18n_route('profile.show'); // /en-us/profile
// If you want a fixed region i18n url
route('en-gb.profile.show'); // /en-gb/profile