Метод exists класса Locales
Метод exists класса Locales проверяет,
существует ли переданный код локали в списке
поддерживаемых локалей стандарта ICU.
Первым параметром метод принимает строку с кодом локали.
Возвращает true, если локаль существует,
и false в противном случае.
Синтаксис
Locales::exists(string $locale): bool
Пример
Давайте проверим существование нескольких кодов локалей:
<?php
namespace App\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Intl\Locales;
class LocaleController extends AbstractController
{
public function index(): Response
{
$res = [
Locales::exists('en'),
Locales::exists('ru'),
Locales::exists('xx')
];
return new Response(json_encode($res));
}
}
?>
Результат выполнения кода:
[true, true, false]
Пример
Давайте выведем текстовое сообщение в зависимости от результата проверки:
<?php
namespace App\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Intl\Locales;
class LocaleController extends AbstractController
{
public function index(): Response
{
$locale = 'abcde';
if (Locales::exists($locale)) {
$res = 'locale found';
} else {
$res = 'locale not found';
}
return new Response($res);
}
}
?>
Результат выполнения кода:
"locale not found"