Июнь 14, 2018
Теги: Основное
Работа с региональными настройками с помощью класса "\Bitrix\Main\Context\Culture".
Получить объект текущих региональных настроек:
\Bitrix\Main\Context::getCurrent()->getCulture()
/*
Bitrix\Main\Context\Culture Object
(
[fields:protected] => Array
(
[LID] => ru
[SORT] => 1
[DEF] => Y
[ACTIVE] => Y
[NAME] => Russian
[FORMAT_DATE] => DD.MM.YYYY
[FORMAT_DATETIME] => DD.MM.YYYY HH:MI:SS
[FORMAT_NAME] => #NAME# #LAST_NAME#
[WEEK_START] => 1
[CHARSET] => UTF-8
[DIRECTION] => Y
[CULTURE_ID] => 1
[ID] => ru
[LANGUAGE_ID] => ru
)
)
*/
Создать свой объект региональных настроек:
Получить объект региональных настроек из базы данных для объекта с идентификатором в $cultureId:
$culture = \Bitrix\Main\Context\Culture::wakeUp($cultureId);
/*
Bitrix\Main\Context\Culture Object
(
[fields:protected] => Array
(
[ID] => 1
[CODE] => ru
[NAME] => ru
[FORMAT_DATE] => DD.MM.YYYY
[FORMAT_DATETIME] => DD.MM.YYYY HH:MI:SS
[FORMAT_NAME] => #NAME# #LAST_NAME#
[WEEK_START] => 1
[CHARSET] => UTF-8
[DIRECTION] => Y
)
)
*/
Получить формат даты/времени из объекта региональных настроек:
Получить все зарегистрированные в системе региональные настройки:
$result = \Bitrix\Main\Localization\CultureTable::getList();
while($arCulture=$result->fetch())
{
print_r($arCulture);
}
/*
Array
(
[ID] => 1
[CODE] => ru
[NAME] => ru
[FORMAT_DATE] => DD.MM.YYYY
[FORMAT_DATETIME] => DD.MM.YYYY HH:MI:SS
[FORMAT_NAME] => #NAME# #LAST_NAME#
[WEEK_START] => 1
[CHARSET] => UTF-8
[DIRECTION] => Y
)
Array
(
[ID] => 2
[CODE] => en
[NAME] => en
[FORMAT_DATE] => MM/DD/YYYY
[FORMAT_DATETIME] => MM/DD/YYYY H:MI:SS T
[FORMAT_NAME] => #NAME# #LAST_NAME#
[WEEK_START] => 0
[CHARSET] => UTF-8
[DIRECTION] => Y
)
*/