Метод exists класса Languages
Метод exists класса Languages из компонента Symfony\Component\Intl проверяет, существует ли указанный код языка в списке поддерживаемых языков. Первым параметром передаётся строка с кодом языка, например 'en' или 'ru'. Вторым необязательным параметром передаётся код локали, в которой нужно проверить наличие языка. Метод возвращает true, если язык существует, и false в противном случае.
Метод удобно использовать для валидации локали, которую вводит пользователь, или для проверки поддерживаемых языков перед сменой локали приложения.
Синтаксис
Languages::exists(string $language, ?string $locale = null): bool
Пример
Давайте проверим, существует ли язык с кодом 'en':
<?php
namespace App\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Intl\Languages;
class LanguageController extends AbstractController
{
public function index(): Response
{
$res = Languages::exists('en');
return new Response(var_export($res, true));
}
}
?>
Результат выполнения кода:
true
Пример
Давайте проверим язык с несуществующим кодом 'xx':
<?php
namespace App\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Intl\Languages;
class LanguageController extends AbstractController
{
public function index(): Response
{
$res = Languages::exists('xx');
return new Response(var_export($res, true));
}
}
?>
Результат выполнения кода:
false
Пример
Давайте проверим существование языка с учётом локали 'ru':
<?php
namespace App\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Intl\Languages;
class LanguageController extends AbstractController
{
public function index(): Response
{
$res = Languages::exists('ru', 'ru');
return new Response(var_export($res, true));
}
}
?>
Результат выполнения кода:
true
Смотрите также
-
класс
Languages,
который предоставляет работу со списком языков -
метод
getName,
который возвращает название языка по его коду -
метод
getNames,
который возвращает массив всех названий языков -
метод
getAlpha3Code,
который возвращает трёхбуквенный код языка