Laravel Localization

Laravel_Localization.jpg

  • Router
Route::get('/setting/lang/{locale}', function ($locale) {
    $validLocale = in_array($locale, ['id', 'en']);
    if ($validLocale) {
        Session::put('lang', $locale);
    }

    return back();
});
  • Middleware
$ php artisan make:middleware LanguangeMiddleware
  • Code LanguageMiddleware
<?php

namespace App\Http\Middleware;

use Closure;
use App, Session;

class LanguangeMiddleware
{
    public function handle($request, Closure $next)
    {
        App::setLocale(Session::get('lang'));
        return $next($request);
    }
}
  • open app/Http/Kernel.php
protected $routeMiddleware = [
        // ...
        'languange' => \App\Http\Middleware\LanguangeMiddleware::class,
    ];
  • use LanguangeMiddleware for router
Route::group(['middleware' => 'languange'], function()
{
     // your route
});
  • use in controller
public function store(Request $request)
    {
        // ...
        Session::flash('message', __('pos.item_saved'));
        // ..
    }
  • use in blade
<h1 class="h3 mb-0 text-gray-800">@lang('pos.create_item')</h1>

Laravel 5.8

H2
H3
H4
3 columns
2 columns
1 column
Join the conversation now
Logo
Center