У меня есть ресурсы/lang/fr_FR.json, resources/lang/en_US.json и т. д., там у меня есть все ключи на испанском языке и их значения на нужном языке.
Я пытаюсь перевести входящий URL-адрес, например, если я нажимаю «контакт», если я говорю на испанском языке и переключаюсь на английский, это работает нормально, потому что у меня зарегистрирован ключевой контакт, но если я в английский У меня есть «контакт», но у меня нет этого ключа для перевода.
Это функция, которая меняет локаль URL-адреса
public function setLocale($locale, $desiredLocale)
{
$previousUrl = explode("/", url()->previous());
$newUrl = array();
foreach ($previousUrl as $segment) {
$translatedSegment = __($segment, [], $desiredLocale);
array_push($newUrl, $translatedSegment);
}
$uri = implode("/", $newUrl);
$uri = str_ireplace($locale, $desiredLocale, $uri);
return redirect($uri, 301);
}
РЕДАКТИРОВАНИЕ: Чего я хочу достичь
У меня на панели навигации есть раскрывающийся список с языками, es, fr , eng, например
Я нахожусь на http://localhost/laravel-project/public/es_ES/inicio, затем нажимаю на раскрывающийся список язык eng, и он отправляет меня по этому маршруту:
$key])}}">eng
Мой региональный маршрут:
//Language swap
Route::get('/language/{desiredLocale}', 'LocaleController@setLocale')->name('setLocale');
и мой localeController — это функция, которую я показал (переменная $locale поступает из промежуточного программного обеспечения, поэтому установлена на url::default)
Он должен перенаправить меня на http://localhost/laravel-project/public/en_US/home
Потом с тех пор на моем web.php у меня есть:
Route::get(__('inicio'), function () {
return view('pages.home.index');
})->name('inicio');
Он будет искать в моем en_US.json слово и маршрут, и он будет существовать:
{
"inicio": "home",
}
Подробнее здесь: https://stackoverflow.com/questions/574 ... on-laravel
Можно ли получить ключ переведенной строки на laravel? [дубликат] ⇐ Php
Кемеровские программисты php общаются здесь
-
Anonymous
1733699894
Anonymous
У меня есть ресурсы/lang/fr_FR.json, resources/lang/en_US.json и т. д., там у меня есть все ключи на испанском языке и их значения на нужном языке.
Я пытаюсь перевести входящий URL-адрес, например, если я нажимаю «контакт», если я говорю на испанском языке и переключаюсь на английский, это работает нормально, потому что у меня зарегистрирован ключевой контакт, но если я в английский У меня есть «контакт», но у меня нет этого ключа для перевода.
Это функция, которая меняет локаль URL-адреса
public function setLocale($locale, $desiredLocale)
{
$previousUrl = explode("/", url()->previous());
$newUrl = array();
foreach ($previousUrl as $segment) {
$translatedSegment = __($segment, [], $desiredLocale);
array_push($newUrl, $translatedSegment);
}
$uri = implode("/", $newUrl);
$uri = str_ireplace($locale, $desiredLocale, $uri);
return redirect($uri, 301);
}
РЕДАКТИРОВАНИЕ: Чего я хочу достичь
У меня на панели навигации есть раскрывающийся список с языками, es, fr , eng, например
Я нахожусь на http://localhost/laravel-project/public/es_ES/inicio, затем нажимаю на раскрывающийся список язык eng, и он отправляет меня по этому маршруту:
[url={{route(] $key])}}">eng[/url]
Мой региональный маршрут:
//Language swap
Route::get('/language/{desiredLocale}', 'LocaleController@setLocale')->name('setLocale');
и мой localeController — это функция, которую я показал (переменная $locale поступает из промежуточного программного обеспечения, поэтому установлена на url::default)
Он должен перенаправить меня на http://localhost/laravel-project/public/en_US/home
Потом с тех пор на моем web.php у меня есть:
Route::get(__('inicio'), function () {
return view('pages.home.index');
})->name('inicio');
Он будет искать в моем en_US.json слово и маршрут, и он будет существовать:
{
"inicio": "home",
}
Подробнее здесь: [url]https://stackoverflow.com/questions/57493734/is-it-possible-to-get-the-key-of-a-translated-string-on-laravel[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия