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

Класс Locales

Класс Locales в Symfony предназначен для работы со справочником локалей. Он позволяет получать названия локалей, проверять их существование и получать список всех доступных локалей. Класс не требует создания экземпляра, так как все его методы статические.

Основные методы: getName - возвращает название локали по её коду, getNames - возвращает массив всех локалей, exists - проверяет, существует ли локаль с указанным кодом.

Синтаксис

use Symfony\Component\Intl\Locales; Locales::getName(string $locale, string $displayLocale = null): string Locales::getNames(string $displayLocale = null): array Locales::exists(string $locale): bool

Пример

Давайте получим название локали по её коду:

<?php namespace App\Controller; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\Routing\Attribute\Route; use Symfony\Component\Intl\Locales; class LocaleController extends AbstractController { #[Route('/locale', name: 'locale_info')] public function index(): Response { $name = Locales::getName('fr'); return new Response($name); } } ?>

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

"French"

Пример

Давайте проверим существование локали:

<?php namespace App\Controller; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\Routing\Attribute\Route; use Symfony\Component\Intl\Locales; class LocaleController extends AbstractController { #[Route('/locale/exists', name: 'locale_exists')] public function exists(): Response { $res = Locales::exists('fr'); return new Response($res ? 'true' : 'false'); } } ?>

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

"true"

Пример

Давайте получим список всех локалей:

<?php namespace App\Controller; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\Routing\Attribute\Route; use Symfony\Component\Intl\Locales; class LocaleController extends AbstractController { #[Route('/locale/all', name: 'locale_all')] public function all(): Response { $names = Locales::getNames(); return new Response(implode(', ', array_slice($names, 0, 5))); } } ?>

Результат выполнения кода (первые 5 элементов):

"Afrikaans, Amharic, Arabic, Assamese, Azerbaijani"

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

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