Documentation

Locale
in package

Ease Locale support

Tags
author

vitex

Table of Contents

$alllngs  : array
All Language Codes => languages
$i18n  : string
i18n files location
$instance  : Locale
$localeUsed  : string
Current Used locale code
$textDomain  : string
GetText Domain
__construct()  : mixed
Prepare use of localization
autodetected()  : string
Try to autodetect default language
availble()  : array
List of availble locales
browserLocale()  : string
Locale code by browser default language
get2Code()  : string
obtain ISO 639-1 language code
getLocaleUsed()  : string
get Current Used locale code
getPreferedLocale()  : string
Prefered Locale Code - 1) Requested 2) Session 3) Browser for WebPage or getenv('LC_ALL') for CLI
initializeGetText()  : mixed
Initialise Gettext
langToLocale()  : string
Find Locale Code for browser language
requestLocale()  : string|null
Session by page GET or POST request with 'locale' field
sessionLocale()  : string|null
Locale code saved to session field $_SESSION['locale']
setTextDomain()  : mixed
Store GetText Domain
singleton()  : Locale
Common instance of Locale class
useLocale()  : string
Use Effective locale to requested

Properties

$alllngs

All Language Codes => languages

public static array $alllngs = ["af_NA" => "Afrikaans (Namibia)", "af_ZA" => "Afrikaans (South Africa)", "af" => "Afrikaans", "ak_GH" => "Akan (Ghana)", "ak" => "Akan", "sq_AL" => "Albanian (Albania)", "sq" => "Albanian", "am_ET" => "Amharic (Ethiopia)", "am" => "Amharic", "ar_DZ" => "Arabic (Algeria)", "ar_BH" => "Arabic (Bahrain)", "ar_EG" => "Arabic (Egypt)", "ar_IQ" => "Arabic (Iraq)", "ar_JO" => "Arabic (Jordan)", "ar_KW" => "Arabic (Kuwait)", "ar_LB" => "Arabic (Lebanon)", "ar_LY" => "Arabic (Libya)", "ar_MA" => "Arabic (Morocco)", "ar_OM" => "Arabic (Oman)", "ar_QA" => "Arabic (Qatar)", "ar_SA" => "Arabic (Saudi Arabia)", "ar_SD" => "Arabic (Sudan)", "ar_SY" => "Arabic (Syria)", "ar_TN" => "Arabic (Tunisia)", "ar_AE" => "Arabic (United Arab Emirates)", "ar_YE" => "Arabic (Yemen)", "ar" => "Arabic", "hy_AM" => "Armenian (Armenia)", "hy" => "Armenian", "as_IN" => "Assamese (India)", "as" => "Assamese", "asa_TZ" => "Asu (Tanzania)", "asa" => "Asu", "az_Cyrl" => "Azerbaijani (Cyrillic)", "az_Cyrl_AZ" => "Azerbaijani (Cyrillic, Azerbaijan)", "az_Latn" => "Azerbaijani (Latin)", "az_Latn_AZ" => "Azerbaijani (Latin, Azerbaijan)", "az" => "Azerbaijani", "bm_ML" => "Bambara (Mali)", "bm" => "Bambara", "eu_ES" => "Basque (Spain)", "eu" => "Basque", "be_BY" => "Belarusian (Belarus)", "be" => "Belarusian", "bem_ZM" => "Bemba (Zambia)", "bem" => "Bemba", "bez_TZ" => "Bena (Tanzania)", "bez" => "Bena", "bn_BD" => "Bengali (Bangladesh)", "bn_IN" => "Bengali (India)", "bn" => "Bengali", "bs_BA" => "Bosnian (Bosnia and Herzegovina)", "bs" => "Bosnian", "bg_BG" => "Bulgarian (Bulgaria)", "bg" => "Bulgarian", "my_MM" => "Burmese (Myanmar [Burma])", "my" => "Burmese", "ca_ES" => "Catalan (Spain)", "ca" => "Catalan", "tzm_Latn" => "Central Morocco Tamazight (Latin)", "tzm_Latn_MA" => "Central Morocco Tamazight (Latin, Morocco)", "tzm" => "Central Morocco Tamazight", "chr_US" => "Cherokee (United States)", "chr" => "Cherokee", "cgg_UG" => "Chiga (Uganda)", "cgg" => "Chiga", "zh_Hans" => "Chinese (Simplified Han)", "zh_Hans_CN" => "Chinese (Simplified Han, China)", "zh_Hans_HK" => "Chinese (Simplified Han, Hong Kong SAR China)", "zh_Hans_MO" => "Chinese (Simplified Han, Macau SAR China)", "zh_Hans_SG" => "Chinese (Simplified Han, Singapore)", "zh_Hant" => "Chinese (Traditional Han)", "zh_Hant_HK" => "Chinese (Traditional Han, Hong Kong SAR China)", "zh_Hant_MO" => "Chinese (Traditional Han, Macau SAR China)", "zh_Hant_TW" => "Chinese (Traditional Han, Taiwan)", "zh" => "Chinese", "kw_GB" => "Cornish (United Kingdom)", "kw" => "Cornish", "hr_HR" => "Croatian (Croatia)", "hr" => "Croatian", "cs_CZ" => "Czech (Czech Republic)", "cs" => "Czech", "da_DK" => "Danish (Denmark)", "da" => "Danish", "nl_BE" => "Dutch (Belgium)", "nl_NL" => "Dutch (Netherlands)", "nl" => "Dutch", "ebu_KE" => "Embu (Kenya)", "ebu" => "Embu", "en_AS" => "English (American Samoa)", "en_AU" => "English (Australia)", "en_BE" => "English (Belgium)", "en_BZ" => "English (Belize)", "en_BW" => "English (Botswana)", "en_CA" => "English (Canada)", "en_GU" => "English (Guam)", "en_HK" => "English (Hong Kong SAR China)", "en_IN" => "English (India)", "en_IE" => "English (Ireland)", "en_JM" => "English (Jamaica)", "en_MT" => "English (Malta)", "en_MH" => "English (Marshall Islands)", "en_MU" => "English (Mauritius)", "en_NA" => "English (Namibia)", "en_NZ" => "English (New Zealand)", "en_MP" => "English (Northern Mariana Islands)", "en_PK" => "English (Pakistan)", "en_PH" => "English (Philippines)", "en_SG" => "English (Singapore)", "en_ZA" => "English (South Africa)", "en_TT" => "English (Trinidad and Tobago)", "en_UM" => "English (U.S. Minor Outlying Islands)", "en_VI" => "English (U.S. Virgin Islands)", "en_GB" => "English (United Kingdom)", "en_US" => "English (United States)", "en_ZW" => "English (Zimbabwe)", "en" => "English", "eo" => "Esperanto", "et_EE" => "Estonian (Estonia)", "et" => "Estonian", "ee_GH" => "Ewe (Ghana)", "ee_TG" => "Ewe (Togo)", "ee" => "Ewe", "fo_FO" => "Faroese (Faroe Islands)", "fo" => "Faroese", "fil_PH" => "Filipino (Philippines)", "fil" => "Filipino", "fi_FI" => "Finnish (Finland)", "fi" => "Finnish", "fr_BE" => "French (Belgium)", "fr_BJ" => "French (Benin)", "fr_BF" => "French (Burkina Faso)", "fr_BI" => "French (Burundi)", "fr_CM" => "French (Cameroon)", "fr_CA" => "French (Canada)", "fr_CF" => "French (Central African Republic)", "fr_TD" => "French (Chad)", "fr_KM" => "French (Comoros)", "fr_CG" => "French (Congo - Brazzaville)", "fr_CD" => "French (Congo - Kinshasa)", "fr_CI" => "French (Côte d’Ivoire)", "fr_DJ" => "French (Djibouti)", "fr_GQ" => "French (Equatorial Guinea)", "fr_FR" => "French (France)", "fr_GA" => "French (Gabon)", "fr_GP" => "French (Guadeloupe)", "fr_GN" => "French (Guinea)", "fr_LU" => "French (Luxembourg)", "fr_MG" => "French (Madagascar)", "fr_ML" => "French (Mali)", "fr_MQ" => "French (Martinique)", "fr_MC" => "French (Monaco)", "fr_NE" => "French (Niger)", "fr_RW" => "French (Rwanda)", "fr_RE" => "French (Réunion)", "fr_BL" => "French (Saint Barthélemy)", "fr_MF" => "French (Saint Martin)", "fr_SN" => "French (Senegal)", "fr_CH" => "French (Switzerland)", "fr_TG" => "French (Togo)", "fr" => "French", "ff_SN" => "Fulah (Senegal)", "ff" => "Fulah", "gl_ES" => "Galician (Spain)", "gl" => "Galician", "lg_UG" => "Ganda (Uganda)", "lg" => "Ganda", "ka_GE" => "Georgian (Georgia)", "ka" => "Georgian", "de_AT" => "German (Austria)", "de_BE" => "German (Belgium)", "de_DE" => "German (Germany)", "de_LI" => "German (Liechtenstein)", "de_LU" => "German (Luxembourg)", "de_CH" => "German (Switzerland)", "de" => "German", "el_CY" => "Greek (Cyprus)", "el_GR" => "Greek (Greece)", "el" => "Greek", "gu_IN" => "Gujarati (India)", "gu" => "Gujarati", "guz_KE" => "Gusii (Kenya)", "guz" => "Gusii", "ha_Latn" => "Hausa (Latin)", "ha_Latn_GH" => "Hausa (Latin, Ghana)", "ha_Latn_NE" => "Hausa (Latin, Niger)", "ha_Latn_NG" => "Hausa (Latin, Nigeria)", "ha" => "Hausa", "haw_US" => "Hawaiian (United States)", "haw" => "Hawaiian", "he_IL" => "Hebrew (Israel)", "he" => "Hebrew", "hi_IN" => "Hindi (India)", "hi" => "Hindi", "hu_HU" => "Hungarian (Hungary)", "hu" => "Hungarian", "is_IS" => "Icelandic (Iceland)", "is" => "Icelandic", "ig_NG" => "Igbo (Nigeria)", "ig" => "Igbo", "id_ID" => "Indonesian (Indonesia)", "id" => "Indonesian", "ga_IE" => "Irish (Ireland)", "ga" => "Irish", "it_IT" => "Italian (Italy)", "it_CH" => "Italian (Switzerland)", "it" => "Italian", "ja_JP" => "Japanese (Japan)", "ja" => "Japanese", "kea_CV" => "Kabuverdianu (Cape Verde)", "kea" => "Kabuverdianu", "kab_DZ" => "Kabyle (Algeria)", "kab" => "Kabyle", "kl_GL" => "Kalaallisut (Greenland)", "kl" => "Kalaallisut", "kln_KE" => "Kalenjin (Kenya)", "kln" => "Kalenjin", "kam_KE" => "Kamba (Kenya)", "kam" => "Kamba", "kn_IN" => "Kannada (India)", "kn" => "Kannada", "kk_Cyrl" => "Kazakh (Cyrillic)", "kk_Cyrl_KZ" => "Kazakh (Cyrillic, Kazakhstan)", "kk" => "Kazakh", "km_KH" => "Khmer (Cambodia)", "km" => "Khmer", "ki_KE" => "Kikuyu (Kenya)", "ki" => "Kikuyu", "rw_RW" => "Kinyarwanda (Rwanda)", "rw" => "Kinyarwanda", "kok_IN" => "Konkani (India)", "kok" => "Konkani", "ko_KR" => "Korean (South Korea)", "ko" => "Korean", "khq_ML" => "Koyra Chiini (Mali)", "khq" => "Koyra Chiini", "ses_ML" => "Koyraboro Senni (Mali)", "ses" => "Koyraboro Senni", "lag_TZ" => "Langi (Tanzania)", "lag" => "Langi", "lv_LV" => "Latvian (Latvia)", "lv" => "Latvian", "lt_LT" => "Lithuanian (Lithuania)", "lt" => "Lithuanian", "luo_KE" => "Luo (Kenya)", "luo" => "Luo", "luy_KE" => "Luyia (Kenya)", "luy" => "Luyia", "mk_MK" => "Macedonian (Macedonia)", "mk" => "Macedonian", "jmc_TZ" => "Machame (Tanzania)", "jmc" => "Machame", "kde_TZ" => "Makonde (Tanzania)", "kde" => "Makonde", "mg_MG" => "Malagasy (Madagascar)", "mg" => "Malagasy", "ms_BN" => "Malay (Brunei)", "ms_MY" => "Malay (Malaysia)", "ms" => "Malay", "ml_IN" => "Malayalam (India)", "ml" => "Malayalam", "mt_MT" => "Maltese (Malta)", "mt" => "Maltese", "gv_GB" => "Manx (United Kingdom)", "gv" => "Manx", "mr_IN" => "Marathi (India)", "mr" => "Marathi", "mas_KE" => "Masai (Kenya)", "mas_TZ" => "Masai (Tanzania)", "mas" => "Masai", "mer_KE" => "Meru (Kenya)", "mer" => "Meru", "mfe_MU" => "Morisyen (Mauritius)", "mfe" => "Morisyen", "naq_NA" => "Nama (Namibia)", "naq" => "Nama", "ne_IN" => "Nepali (India)", "ne_NP" => "Nepali (Nepal)", "ne" => "Nepali", "nd_ZW" => "North Ndebele (Zimbabwe)", "nd" => "North Ndebele", "nb_NO" => "Norwegian Bokmål (Norway)", "nb" => "Norwegian Bokmål", "nn_NO" => "Norwegian Nynorsk (Norway)", "nn" => "Norwegian Nynorsk", "nyn_UG" => "Nyankole (Uganda)", "nyn" => "Nyankole", "or_IN" => "Oriya (India)", "or" => "Oriya", "om_ET" => "Oromo (Ethiopia)", "om_KE" => "Oromo (Kenya)", "om" => "Oromo", "ps_AF" => "Pashto (Afghanistan)", "ps" => "Pashto", "fa_AF" => "Persian (Afghanistan)", "fa_IR" => "Persian (Iran)", "fa" => "Persian", "pl_PL" => "Polish (Poland)", "pl" => "Polish", "pt_BR" => "Portuguese (Brazil)", "pt_GW" => "Portuguese (Guinea-Bissau)", "pt_MZ" => "Portuguese (Mozambique)", "pt_PT" => "Portuguese (Portugal)", "pt" => "Portuguese", "pa_Arab" => "Punjabi (Arabic)", "pa_Arab_PK" => "Punjabi (Arabic, Pakistan)", "pa_Guru" => "Punjabi (Gurmukhi)", "pa_Guru_IN" => "Punjabi (Gurmukhi, India)", "pa" => "Punjabi", "ro_MD" => "Romanian (Moldova)", "ro_RO" => "Romanian (Romania)", "ro" => "Romanian", "rm_CH" => "Romansh (Switzerland)", "rm" => "Romansh", "rof_TZ" => "Rombo (Tanzania)", "rof" => "Rombo", "ru_MD" => "Russian (Moldova)", "ru_RU" => "Russian (Russia)", "ru_UA" => "Russian (Ukraine)", "ru" => "Russian", "rwk_TZ" => "Rwa (Tanzania)", "rwk" => "Rwa", "saq_KE" => "Samburu (Kenya)", "saq" => "Samburu", "sg_CF" => "Sango (Central African Republic)", "sg" => "Sango", "seh_MZ" => "Sena (Mozambique)", "seh" => "Sena", "sr_Cyrl" => "Serbian (Cyrillic)", "sr_Cyrl_BA" => "Serbian (Cyrillic, Bosnia and Herzegovina)", "sr_Cyrl_ME" => "Serbian (Cyrillic, Montenegro)", "sr_Cyrl_RS" => "Serbian (Cyrillic, Serbia)", "sr_Latn" => "Serbian (Latin)", "sr_Latn_BA" => "Serbian (Latin, Bosnia and Herzegovina)", "sr_Latn_ME" => "Serbian (Latin, Montenegro)", "sr_Latn_RS" => "Serbian (Latin, Serbia)", "sr" => "Serbian", "sn_ZW" => "Shona (Zimbabwe)", "sn" => "Shona", "ii_CN" => "Sichuan Yi (China)", "ii" => "Sichuan Yi", "si_LK" => "Sinhala (Sri Lanka)", "si" => "Sinhala", "sk_SK" => "Slovak (Slovakia)", "sk" => "Slovak", "sl_SI" => "Slovenian (Slovenia)", "sl" => "Slovenian", "xog_UG" => "Soga (Uganda)", "xog" => "Soga", "so_DJ" => "Somali (Djibouti)", "so_ET" => "Somali (Ethiopia)", "so_KE" => "Somali (Kenya)", "so_SO" => "Somali (Somalia)", "so" => "Somali", "es_AR" => "Spanish (Argentina)", "es_BO" => "Spanish (Bolivia)", "es_CL" => "Spanish (Chile)", "es_CO" => "Spanish (Colombia)", "es_CR" => "Spanish (Costa Rica)", "es_DO" => "Spanish (Dominican Republic)", "es_EC" => "Spanish (Ecuador)", "es_SV" => "Spanish (El Salvador)", "es_GQ" => "Spanish (Equatorial Guinea)", "es_GT" => "Spanish (Guatemala)", "es_HN" => "Spanish (Honduras)", "es_419" => "Spanish (Latin America)", "es_MX" => "Spanish (Mexico)", "es_NI" => "Spanish (Nicaragua)", "es_PA" => "Spanish (Panama)", "es_PY" => "Spanish (Paraguay)", "es_PE" => "Spanish (Peru)", "es_PR" => "Spanish (Puerto Rico)", "es_ES" => "Spanish (Spain)", "es_US" => "Spanish (United States)", "es_UY" => "Spanish (Uruguay)", "es_VE" => "Spanish (Venezuela)", "es" => "Spanish", "sw_KE" => "Swahili (Kenya)", "sw_TZ" => "Swahili (Tanzania)", "sw" => "Swahili", "sv_FI" => "Swedish (Finland)", "sv_SE" => "Swedish (Sweden)", "sv" => "Swedish", "gsw_CH" => "Swiss German (Switzerland)", "gsw" => "Swiss German", "shi_Latn" => "Tachelhit (Latin)", "shi_Latn_MA" => "Tachelhit (Latin, Morocco)", "shi_Tfng" => "Tachelhit (Tifinagh)", "shi_Tfng_MA" => "Tachelhit (Tifinagh, Morocco)", "shi" => "Tachelhit", "dav_KE" => "Taita (Kenya)", "dav" => "Taita", "ta_IN" => "Tamil (India)", "ta_LK" => "Tamil (Sri Lanka)", "ta" => "Tamil", "te_IN" => "Telugu (India)", "te" => "Telugu", "teo_KE" => "Teso (Kenya)", "teo_UG" => "Teso (Uganda)", "teo" => "Teso", "th_TH" => "Thai (Thailand)", "th" => "Thai", "bo_CN" => "Tibetan (China)", "bo_IN" => "Tibetan (India)", "bo" => "Tibetan", "ti_ER" => "Tigrinya (Eritrea)", "ti_ET" => "Tigrinya (Ethiopia)", "ti" => "Tigrinya", "to_TO" => "Tonga (Tonga)", "to" => "Tonga", "tr_TR" => "Turkish (Turkey)", "tr" => "Turkish", "uk_UA" => "Ukrainian (Ukraine)", "uk" => "Ukrainian", "ur_IN" => "Urdu (India)", "ur_PK" => "Urdu (Pakistan)", "ur" => "Urdu", "uz_Arab" => "Uzbek (Arabic)", "uz_Arab_AF" => "Uzbek (Arabic, Afghanistan)", "uz_Cyrl" => "Uzbek (Cyrillic)", "uz_Cyrl_UZ" => "Uzbek (Cyrillic, Uzbekistan)", "uz_Latn" => "Uzbek (Latin)", "uz_Latn_UZ" => "Uzbek (Latin, Uzbekistan)", "uz" => "Uzbek", "vi_VN" => "Vietnamese (Vietnam)", "vi" => "Vietnamese", "vun_TZ" => "Vunjo (Tanzania)", "vun" => "Vunjo", "cy_GB" => "Welsh (United Kingdom)", "cy" => "Welsh", "yo_NG" => "Yoruba (Nigeria)", "yo" => "Yoruba", "zu_ZA" => "Zulu (South Africa)", "zu" => "Zulu"]

$i18n

i18n files location

public static string $i18n = null

$localeUsed

Current Used locale code

public static string $localeUsed = null

$textDomain

GetText Domain

public static string $textDomain = null

Methods

__construct()

Prepare use of localization

public __construct([string $setLocale = null ][, string $i18n = '../i18n' ][, string $textDomain = null ]) : mixed
Parameters
$setLocale : string = null

en_US|cs_CZ|..

$i18n : string = '../i18n'

directory ( /usr/lib/locale/ in Debian )

$textDomain : string = null

we want use $i18n/$setLocale/LC_ALL/$textDomain.mo

Return values
mixed

autodetected()

Try to autodetect default language

public static autodetected() : string
Return values
string

lang code

availble()

List of availble locales

public availble() : array
Return values
array

locales availble

browserLocale()

Locale code by browser default language

public static browserLocale() : string
Return values
string

locale code

get2Code()

obtain ISO 639-1 language code

public get2Code() : string
Return values
string

getLocaleUsed()

get Current Used locale code

public static getLocaleUsed() : string
Return values
string

getPreferedLocale()

Prefered Locale Code - 1) Requested 2) Session 3) Browser for WebPage or getenv('LC_ALL') for CLI

public static getPreferedLocale([ $allowCli = true ]) : string
Parameters
$allowCli : = true

boolean Allow use in cli mode (set false for testing)

Return values
string

locale code

initializeGetText()

Initialise Gettext

public static initializeGetText(string $appname[, string $defaultLocale = 'en_US' ][, string $i18n = '../i18n' ]) : mixed

$i18n/$defaultLocale/LC_MESSAGES/$appname.mo

Parameters
$appname : string

name for binddomain

$defaultLocale : string = 'en_US'

locale of source code localstring

$i18n : string = '../i18n'

directory base localisation directory

Return values
mixed

langToLocale()

Find Locale Code for browser language

public static langToLocale(string $lang) : string
Parameters
$lang : string

browser lan en|cs|..

Return values
string

locale code

requestLocale()

Session by page GET or POST request with 'locale' field

public static requestLocale() : string|null
Return values
string|null

Locale Code

sessionLocale()

Locale code saved to session field $_SESSION['locale']

public static sessionLocale() : string|null
Return values
string|null

locale code

setTextDomain()

Store GetText Domain

public static setTextDomain(string $textDomain) : mixed
Parameters
$textDomain : string
Return values
mixed

singleton()

Common instance of Locale class

public static singleton([string $setLocale = null ][, string $i18n = '../i18n' ][, string $textDomain = null ]) : Locale
Parameters
$setLocale : string = null

en_US|cs_CZ|..

$i18n : string = '../i18n'

directory ( /usr/lib/locale/ in Debian )

$textDomain : string = null

we want use $i18n/$setLocale/LC_ALL/$textDomain.mo

Return values
Locale

useLocale()

Use Effective locale to requested

public static useLocale(string $localeCode) : string
Parameters
$localeCode : string

locale code to use

Return values
string

used locale code

Search results