Метод getNames
Метод getNames класса Timezones возвращает
ассоциативный массив, где ключами являются идентификаторы
временных зон, а значениями - их локализованные названия.
Первым параметром передаётся локаль, для которой нужно
получить названия. Вторым необязательным параметром можно
передать массив идентификаторов зон, чтобы ограничить выборку.
Синтаксис
public function getNames(string $locale, array $timezones = []): array
Пример
Давайте получим названия всех временных зон для локали 'en':
<?php
namespace App\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Intl\Timezones;
class TimezoneController extends AbstractController
{
public function index(): Response
{
$res = Timezones::getNames('en');
return new Response(json_encode($res));
}
}
?>
Результат выполнения кода:
{"Africa/Abidjan":"Abidjan","Africa/Accra":"Accra","Africa/Addis_Ababa":"Addis Ababa", ...}
Пример
Давайте получим названия временных зон для локали 'ru':
<?php
namespace App\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Intl\Timezones;
class TimezoneController extends AbstractController
{
public function index(): Response
{
$res = Timezones::getNames('ru');
return new Response(json_encode($res));
}
}
?>
Результат выполнения кода:
{"Africa/Abidjan":"Абиджан","Africa/Accra":"Аккра","Africa/Addis_Ababa":"Аддис-Абеба", ...}
Пример
Давайте ограничим выборку конкретными временными зонами:
<?php
namespace App\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Intl\Timezones;
class TimezoneController extends AbstractController
{
public function index(): Response
{
$res = Timezones::getNames('en', ['Europe/Paris', 'Europe/Moscow']);
return new Response(json_encode($res));
}
}
?>
Результат выполнения кода:
{"Europe/Paris":"Paris","Europe/Moscow":"Moscow"}
Смотрите также
-
класс
Timezones,
который предоставляет данные о временных зонах -
метод
getName,
который возвращает название одной временной зоны -
метод
exists,
который проверяет существование временной зоны -
метод
forCountryCode,
который возвращает временные зоны для страны