Changeset View
Changeset View
Standalone View
Standalone View
src/internationalization/PhutilLocale.php
Show First 20 Lines • Show All 136 Lines • ▼ Show 20 Lines | abstract class PhutilLocale extends Phobject { | ||||
* Load all available locales. | * Load all available locales. | ||||
* | * | ||||
* @return map<string, PhutilLocale> Map from codes to locale objects. | * @return map<string, PhutilLocale> Map from codes to locale objects. | ||||
*/ | */ | ||||
public static function loadAllLocales() { | public static function loadAllLocales() { | ||||
static $locales; | static $locales; | ||||
if ($locales === null) { | if ($locales === null) { | ||||
$objects = id(new PhutilClassMapQuery()) | $objects = (new PhutilClassMapQuery()) | ||||
->setAncestorClass(__CLASS__) | ->setAncestorClass(__CLASS__) | ||||
->execute(); | ->execute(); | ||||
$locale_map = array(); | $locale_map = array(); | ||||
foreach ($objects as $object) { | foreach ($objects as $object) { | ||||
$locale_code = $object->getLocaleCode(); | $locale_code = $object->getLocaleCode(); | ||||
if (empty($locale_map[$locale_code])) { | if (empty($locale_map[$locale_code])) { | ||||
$locale_map[$locale_code] = $object; | $locale_map[$locale_code] = $object; | ||||
▲ Show 20 Lines • Show All 94 Lines • Show Last 20 Lines |
Content licensed under Creative Commons Attribution-ShareAlike 4.0 (CC-BY-SA) unless otherwise noted; code licensed under Apache 2.0 or other open source licenses. · CC BY-SA 4.0 · Apache 2.0