- Модуль: currency
- Путь к файлу: ~/bitrix/modules/currency/lib/currencymanager.php
- Класс: BitrixCurrencyCurrencyManager
- Вызов: CurrencyManager::getCurrencyList
static function getCurrencyList(): array
{
$currencyTableName = CurrencyTable::getTableName();
$managedCache = Application::getInstance()->getManagedCache();
$cacheTime = (int)(defined('CURRENCY_CACHE_TIME') ? CURRENCY_CACHE_TIME : CURRENCY_CACHE_DEFAULT_TIME);
$cacheId = self::CACHE_CURRENCY_SHORT_LIST_ID.LANGUAGE_ID;
if ($managedCache->read($cacheTime, $cacheId, $currencyTableName))
{
$currencyList = $managedCache->get($cacheId);
}
else
{
$currencyList = [];
$currencyIterator = CurrencyTable::getList([
'select' => [
'CURRENCY',
'FULL_NAME' => 'CURRENT_LANG_FORMAT.FULL_NAME',
'SORT',
],
'order' => [
'SORT' => 'ASC',
'CURRENCY' => 'ASC',
],
]);
while ($currency = $currencyIterator->fetch())
{
$currency['FULL_NAME'] = (string)$currency['FULL_NAME'];
$currencyList[$currency['CURRENCY']] = $currency['CURRENCY']
. ($currency['FULL_NAME'] !== '' ? ' (' . $currency['FULL_NAME'] . ')' : '')
;
}
unset($currency, $currencyIterator);
$managedCache->set($cacheId, $currencyList);
}
return $currencyList;
}