как поменять язык в laravel 5.7 - PullRequest
0 голосов
/ 07 декабря 2018

Я новичок в этом форуме, и это мой первый вопрос.Я разрабатываю приложение laravel. Так что язык приложения по умолчанию - English.Я хочу изменить это на Chinese.

Моим требованием является основной язык Chinese и другой язык English.Мой выбор языка работает нормально, но когда я изменяю приложение "локальный" на китайский, но это меняется.Я попытался очистить кэш и перепроверить это тоже самое. Не сменить язык.Я уже создал два языковых массива «en» для английского языка, «ch» для китайского.

config / app.php

'locale' => 'en',  

'fallback_locale' => 'ch',

LanguageMiddleware app/Http/Middleware

public function handle($request, Closure $next)
{

    if(Session::has('locale')){
        app()->setLocale(Session::get('locale'));
    }

    return $next($request);
}

web.php routes/web.php

Route::group(['middleware' => 'language'],function(){
    Route::get('/', function () {
        return view('welcome');
    });
});

Спасибо.

Ответы [ 2 ]

0 голосов
/ 07 декабря 2018

Некоторые пакеты могут поставляться с собственными языковыми файлами.Вместо того, чтобы изменять файлы ядра пакета для настройки этих строк, вы можете переопределить их, поместив файлы в каталог resources/lang/vendor/{package}/{locale}.

https://laravel.com/docs/5.7/localization

Я думаю, этот пакет поможет вам переключить язык

https://github.com/akaunting/language

0 голосов
/ 07 декабря 2018

попробуйте это

Вы можете изменить активный язык во время выполнения, используя метод setLocale на фасаде приложения

App::setLocale($locale);     //by facade.
app()->setLocate($locate);   ///by helper 

Вы можете использовать getLocale и isLocaleметоды для определения текущей локали или проверки, является ли локаль заданным значением

$locale = App::getLocale();   //get current language

if (App::isLocale('en')) {  //if current language is english then true else false.
    //
}

Вы также можете настроить «запасной язык», который будет использоваться, когда активный язык не содержит заданнуюпереводная строка

'fallback_locale' => 'en',

для получения дополнительной информации прочитайте эту статью и см. официальный документ laravel

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...