РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
913 of 1392 menu

Класс Lang

Класс Lang в Laravel является фасадом для работы с локализацией. Он предоставляет методы для получения переведённых строк из языковых файлов, проверки наличия переводов, а также управления текущей локалью приложения. Данный класс является основным инструментом для интернационализации приложений на Laravel.

Синтаксис

<?php use Illuminate\Support\Facades\Lang; Lang::method($parameters); ?>

Основные методы

Класс Lang предоставляет несколько ключевых методов для работы с локализацией:

Метод get

Метод get используется для получения переведённой строки по ключу. Первым параметром передаётся ключ перевода в формате 'file.key', вторым параметром - массив параметров для замены.

<?php use Illuminate\Support\Facades\Lang; $greeting = Lang::get('messages.welcome'); echo $greeting; ?>

Результат выполнения кода:

"Welcome to our application"

Метод has

Метод has проверяет наличие перевода для указанного ключа. Возвращает логическое значение.

<?php use Illuminate\Support\Facades\Lang; if (Lang::has('messages.welcome')) { echo Lang::get('messages.welcome'); } else { echo "Translation not found"; } ?>

Результат выполнения кода:

"Welcome to our application"

Метод choice

Метод choice используется для получения перевода с учётом множественного числа. Первым параметром передаётся ключ, вторым - количество, третьим - массив параметров.

<?php use Illuminate\Support\Facades\Lang; $message = Lang::choice('messages.apples', 5); echo $message; ?>

Результат выполнения кода:

"There are 5 apples"

Метод setLocale

Метод setLocale устанавливает текущую локаль приложения.

<?php use Illuminate\Support\Facades\Lang; Lang::setLocale('ru'); $greeting = Lang::get('messages.welcome'); echo $greeting; ?>

Результат выполнения кода:

"Добро пожаловать в наше приложение"

Метод getLocale

Метод getLocale возвращает текущую локаль приложения.

<?php use Illuminate\Support\Facades\Lang; $locale = Lang::getLocale(); echo $locale; ?>

Результат выполнения кода:

"en"

Пример использования в Blade-шаблоне

В Blade-шаблонах можно использовать директиву @lang для быстрого получения переводов:

<h1>@lang('messages.welcome')</h1> <p>@lang('messages.description')</p>

Результат выполнения кода:

<h1>Welcome to our application</h1> <p>This is a description</p>

Пример с параметрами

Метод get поддерживает замену параметров в переводах:

<?php use Illuminate\Support\Facades\Lang; $name = "John"; $message = Lang::get('messages.greeting', ['name' => $name]); echo $message; ?>

Результат выполнения кода:

"Hello, John"

Смотрите также

  • фасад App,
    который также предоставляет методы для работы с локалью
  • метод has,
    который проверяет наличие перевода для ключа
  • метод choice,
    который получает перевод с учётом множественного числа
  • метод setLocale,
    который устанавливает текущую локаль приложения
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить