56 lines
3.7 KiB
PHP
56 lines
3.7 KiB
PHP
<?php
|
|
/*
|
|
setlocale(int $category, string $locales, string ...$rest): string|false
|
|
|
|
Альтернативная сигнатура (не поддерживается с именованными аргументами):
|
|
setlocale(int $category, array $locale_array): string|false
|
|
*/
|
|
|
|
/*
|
|
category
|
|
Параметр category - это именованная константа, определяющая категорию функций,
|
|
на которые будет влиять установка локали:
|
|
|
|
LC_ALL - все нижеперечисленное
|
|
LC_COLLATE - функции сравнения строк, смотрите strcoll()
|
|
LC_CTYPE - функции преобразования и классификации строк, например strtoupper()
|
|
LC_MONETARY - для функции localeconv()
|
|
LC_NUMERIC - задаёт символ десятичного разделения (смотрите также localeconv())
|
|
LC_TIME - форматирование даты/времени функцией strftime()
|
|
LC_MESSAGES - для системных сообщений (доступна, если PHP был скомпилирован с поддержкой libintl)
|
|
locales
|
|
|
|
Если в качестве locales передана пустая строка "" или null,
|
|
имена локалей будут взяты из одноимённых переменных окружения
|
|
или переменной с именем "LANG".
|
|
Если в качестве locales передан "0", локаль изменена не будет,
|
|
а будет возвращено текущее значение.
|
|
Если в качестве locales передан массив, или после этого аргумента следуют
|
|
дополнительные аргументы, функция будет использовать элементы массива
|
|
или аргументы по порядку в качестве имён локали до тех пор,
|
|
пока установка локали не будет успешной. Это удобно, если одна и та же локаль
|
|
имеет разное имя в различных системах, или для создания запасного варианта
|
|
при отсутствии какой-либо локали в системе.
|
|
|
|
rest
|
|
Необязательные аргументы в виде строк или массивов
|
|
для установки настроек локали до первой успешной попытки.
|
|
|
|
locale_array
|
|
Каждый элемент массива пытается установить новую локаль
|
|
до первой успешной попытки. Это полезно,
|
|
если локаль известна под разными именами в разных системах
|
|
или для обеспечения запасного варианта для возможно недоступного
|
|
языкового стандарта.
|
|
|
|
Замечание:
|
|
На Windows setlocale(LC_ALL, '') устанавливает имена локалей из системных
|
|
региональных/языковых настроек (доступных через Панель Управления).
|
|
*/
|
|
|
|
setlocale(LC_ALL, 'nl_NL');
|
|
|
|
$loc_de = setlocale(LC_ALL, 'de_DE@euro', 'de_DE', 'de', 'ge');
|
|
echo "На этой системе немецкая локаль имеет имя '$loc_de'";
|
|
?>
|