RSS feed for this section

Archive | Snippets

Get country continent in PHP

/**
 * get_country_continent.
 *
 * Gets continent by two letter country code.
 */
function get_country_continent( $country ) {
	$data = array(
		'North America'       => array( 'CA', 'MX', 'US' ),
		'Europe'              => array( 'AD', 'AL', 'AT', 'AX', 'BA', 'BE', 'BG', 'BY', 'CH', 'CZ', 'DE', 'DK', 'EE', 'ES', 'FI',
			'FO', 'FR', 'FX', 'GB', 'GG', 'GI', 'GR', 'HR', 'HU', 'IE', 'IM', 'IS', 'IT', 'JE', 'LI', 'LT', 'LU', 'LV', 'MC', 'MD', 'ME', 'MK', 'MT', 'NL', 'NO',
			'PL', 'PT', 'RO', 'RS', 'RU', 'SE', 'SI', 'SJ', 'SK', 'SM', 'TR', 'UA', 'VA' ),
		'Asia'                => array( 'AE', 'AF', 'AM', 'AP', 'AZ', 'BD', 'BH', 'BN', 'BT', 'CC', 'CY', 'CN', 'CX', 'GE', 'HK',
			'ID', 'IL', 'IN', 'IO', 'IQ', 'IR', 'YE', 'JO', 'JP', 'KG', 'KH', 'KP', 'KR', 'KW', 'KZ', 'LA', 'LB', 'LK', 'MY', 'MM', 'MN', 'MO', 'MV', 'NP', 'OM',
			'PH', 'PK', 'PS', 'QA', 'SA', 'SG', 'SY', 'TH', 'TJ', 'TL', 'TM', 'TW', 'UZ', 'VN' ),
		'Australia & Oceania' => array( 'AS', 'AU', 'CK', 'FJ', 'FM', 'GU', 'KI', 'MH', 'MP', 'NC', 'NF', 'NR', 'NU', 'NZ', 'PF',
			'PG', 'PN', 'PW', 'SB', 'TK', 'TO', 'TV', 'UM', 'VU', 'WF', 'WS' ),
		'Central America'     => array( 'AG', 'AI', 'AN', 'AW', 'BB', 'BL', 'BM', 'BS', 'BZ', 'CR', 'CU', 'DM', 'DO', 'GD', 'GL',
			'GP', 'GT', 'HN', 'HT', 'JM', 'KY', 'KN', 'LC', 'MF', 'MQ', 'MS', 'NI', 'PA', 'PM', 'PR', 'SV', 'TC', 'TT', 'VC', 'VG', 'VI' ),
		'South America'       => array( 'AR', 'BO', 'BR', 'CL', 'CO', 'EC', 'FK', 'GF', 'GY', 'GY', 'PE', 'PY', 'SR', 'UY', 'VE' ),
		'Africa'              => array( 'AO', 'BF', 'BI', 'BJ', 'BW', 'CD', 'CF', 'CG', 'CI', 'CM', 'CV', 'DJ', 'DZ', 'EG', 'EH',
			'ER', 'ET', 'GA', 'GH', 'GM', 'GN', 'GQ', 'GW', 'YT', 'KE', 'KM', 'LY', 'LR', 'LS', 'MA', 'MG', 'ML', 'MR', 'MU', 'MW', 'MZ', 'NA', 'NE', 'NG', 'RE',
			'RW', 'SC', 'SD', 'SH', 'SL', 'SN', 'SO', 'ST', 'SZ', 'TD', 'TG', 'TN', 'TZ', 'UG', 'ZA', 'ZM', 'ZW' ),
	);
	foreach ( $data as $continent => $countries ) {
		if ( in_array( $country, $countries ) ) {
			return $continent;
		}
	}
	return '';
}

Convert country code from ISO ALPHA-2 to ISO ALPHA-3 in PHP

/**
 * country_code_alpha2_to_alpha3.
 */
function country_code_alpha2_to_alpha3( $alpha2 ) {
	$data = array(
		'AF' => 'AFG',
		'AX' => 'ALA',
		'AL' => 'ALB',
		'DZ' => 'DZA',
		'AS' => 'ASM',
		'AD' => 'AND',
		'AO' => 'AGO',
		'AI' => 'AIA',
		'AQ' => 'ATA',
		'AG' => 'ATG',
		'AR' => 'ARG',
		'AM' => 'ARM',
		'AW' => 'ABW',
		'AU' => 'AUS',
		'AT' => 'AUT',
		'AZ' => 'AZE',
		'BS' => 'BHS',
		'BH' => 'BHR',
		'BD' => 'BGD',
		'BB' => 'BRB',
		'BY' => 'BLR',
		'BE' => 'BEL',
		'BZ' => 'BLZ',
		'BJ' => 'BEN',
		'BM' => 'BMU',
		'BT' => 'BTN',
		'BO' => 'BOL',
		'BA' => 'BIH',
		'BW' => 'BWA',
		'BV' => 'BVT',
		'BR' => 'BRA',
		'VG' => 'VGB',
		'IO' => 'IOT',
		'BN' => 'BRN',
		'BG' => 'BGR',
		'BF' => 'BFA',
		'BI' => 'BDI',
		'KH' => 'KHM',
		'CM' => 'CMR',
		'CA' => 'CAN',
		'CV' => 'CPV',
		'KY' => 'CYM',
		'CF' => 'CAF',
		'TD' => 'TCD',
		'CL' => 'CHL',
		'CN' => 'CHN',
		'HK' => 'HKG',
		'MO' => 'MAC',
		'CX' => 'CXR',
		'CC' => 'CCK',
		'CO' => 'COL',
		'KM' => 'COM',
		'CG' => 'COG',
		'CD' => 'COD',
		'CK' => 'COK',
		'CR' => 'CRI',
		'CI' => 'CIV',
		'HR' => 'HRV',
		'CU' => 'CUB',
		'CY' => 'CYP',
		'CZ' => 'CZE',
		'DK' => 'DNK',
		'DJ' => 'DJI',
		'DM' => 'DMA',
		'DO' => 'DOM',
		'EC' => 'ECU',
		'EG' => 'EGY',
		'SV' => 'SLV',
		'GQ' => 'GNQ',
		'ER' => 'ERI',
		'EE' => 'EST',
		'ET' => 'ETH',
		'FK' => 'FLK',
		'FO' => 'FRO',
		'FJ' => 'FJI',
		'FI' => 'FIN',
		'FR' => 'FRA',
		'GF' => 'GUF',
		'PF' => 'PYF',
		'TF' => 'ATF',
		'GA' => 'GAB',
		'GM' => 'GMB',
		'GE' => 'GEO',
		'DE' => 'DEU',
		'GH' => 'GHA',
		'GI' => 'GIB',
		'GR' => 'GRC',
		'GL' => 'GRL',
		'GD' => 'GRD',
		'GP' => 'GLP',
		'GU' => 'GUM',
		'GT' => 'GTM',
		'GG' => 'GGY',
		'GN' => 'GIN',
		'GW' => 'GNB',
		'GY' => 'GUY',
		'HT' => 'HTI',
		'HM' => 'HMD',
		'VA' => 'VAT',
		'HN' => 'HND',
		'HU' => 'HUN',
		'IS' => 'ISL',
		'IN' => 'IND',
		'ID' => 'IDN',
		'IR' => 'IRN',
		'IQ' => 'IRQ',
		'IE' => 'IRL',
		'IM' => 'IMN',
		'IL' => 'ISR',
		'IT' => 'ITA',
		'JM' => 'JAM',
		'JP' => 'JPN',
		'JE' => 'JEY',
		'JO' => 'JOR',
		'KZ' => 'KAZ',
		'KE' => 'KEN',
		'KI' => 'KIR',
		'KP' => 'PRK',
		'KR' => 'KOR',
		'KW' => 'KWT',
		'KG' => 'KGZ',
		'LA' => 'LAO',
		'LV' => 'LVA',
		'LB' => 'LBN',
		'LS' => 'LSO',
		'LR' => 'LBR',
		'LY' => 'LBY',
		'LI' => 'LIE',
		'LT' => 'LTU',
		'LU' => 'LUX',
		'MK' => 'MKD',
		'MG' => 'MDG',
		'MW' => 'MWI',
		'MY' => 'MYS',
		'MV' => 'MDV',
		'ML' => 'MLI',
		'MT' => 'MLT',
		'MH' => 'MHL',
		'MQ' => 'MTQ',
		'MR' => 'MRT',
		'MU' => 'MUS',
		'YT' => 'MYT',
		'MX' => 'MEX',
		'FM' => 'FSM',
		'MD' => 'MDA',
		'MC' => 'MCO',
		'MN' => 'MNG',
		'ME' => 'MNE',
		'MS' => 'MSR',
		'MA' => 'MAR',
		'MZ' => 'MOZ',
		'MM' => 'MMR',
		'NA' => 'NAM',
		'NR' => 'NRU',
		'NP' => 'NPL',
		'NL' => 'NLD',
		'AN' => 'ANT',
		'NC' => 'NCL',
		'NZ' => 'NZL',
		'NI' => 'NIC',
		'NE' => 'NER',
		'NG' => 'NGA',
		'NU' => 'NIU',
		'NF' => 'NFK',
		'MP' => 'MNP',
		'NO' => 'NOR',
		'OM' => 'OMN',
		'PK' => 'PAK',
		'PW' => 'PLW',
		'PS' => 'PSE',
		'PA' => 'PAN',
		'PG' => 'PNG',
		'PY' => 'PRY',
		'PE' => 'PER',
		'PH' => 'PHL',
		'PN' => 'PCN',
		'PL' => 'POL',
		'PT' => 'PRT',
		'PR' => 'PRI',
		'QA' => 'QAT',
		'RE' => 'REU',
		'RO' => 'ROU',
		'RU' => 'RUS',
		'RW' => 'RWA',
		'BL' => 'BLM',
		'SH' => 'SHN',
		'KN' => 'KNA',
		'LC' => 'LCA',
		'MF' => 'MAF',
		'PM' => 'SPM',
		'VC' => 'VCT',
		'WS' => 'WSM',
		'SM' => 'SMR',
		'ST' => 'STP',
		'SA' => 'SAU',
		'SN' => 'SEN',
		'RS' => 'SRB',
		'SC' => 'SYC',
		'SL' => 'SLE',
		'SG' => 'SGP',
		'SK' => 'SVK',
		'SI' => 'SVN',
		'SB' => 'SLB',
		'SO' => 'SOM',
		'ZA' => 'ZAF',
		'GS' => 'SGS',
		'SS' => 'SSD',
		'ES' => 'ESP',
		'LK' => 'LKA',
		'SD' => 'SDN',
		'SR' => 'SUR',
		'SJ' => 'SJM',
		'SZ' => 'SWZ',
		'SE' => 'SWE',
		'CH' => 'CHE',
		'SY' => 'SYR',
		'TW' => 'TWN',
		'TJ' => 'TJK',
		'TZ' => 'TZA',
		'TH' => 'THA',
		'TL' => 'TLS',
		'TG' => 'TGO',
		'TK' => 'TKL',
		'TO' => 'TON',
		'TT' => 'TTO',
		'TN' => 'TUN',
		'TR' => 'TUR',
		'TM' => 'TKM',
		'TC' => 'TCA',
		'TV' => 'TUV',
		'UG' => 'UGA',
		'UA' => 'UKR',
		'AE' => 'ARE',
		'GB' => 'GBR',
		'US' => 'USA',
		'UM' => 'UMI',
		'UY' => 'URY',
		'UZ' => 'UZB',
		'VU' => 'VUT',
		'VE' => 'VEN',
		'VN' => 'VNM',
		'VI' => 'VIR',
		'WF' => 'WLF',
		'EH' => 'ESH',
		'YE' => 'YEM',
		'ZM' => 'ZMB',
		'ZW' => 'ZWE',
	);
	return ( isset( $data[ $alpha2 ] ) ? $data[ $alpha2 ] : '' );
}

Check if country is in Europe in PHP

/**
 * is_europe_country.
 */
function is_europe_country( $country ) {
	$europe = array( 'AD', 'AL', 'AT', 'AX', 'BA', 'BE', 'BG', 'BY', 'CH', 'CZ', 'DE', 'DK', 'EE', 'ES', 'FI', 'FO', 'FR', 'FX', 'GB', 'GG', 'GI', 'GR', 'HR', 'HU', 'IE', 'IM', 'IS', 'IT', 'JE', 'LI', 'LT', 'LU', 'LV', 'MC', 'MD', 'ME', 'MK', 'MT', 'NL', 'NO', 'PL', 'PT', 'RO', 'RS', 'RU', 'SE', 'SI', 'SJ', 'SK', 'SM', 'TR', 'UA', 'VA' );
	return in_array( $country, $europe );
}

Parse a string into a number in PHP

/**
 * Simple way to parse a string to PHP number.
 */
function parse_string_to_php_number( $number_string ) {
	if ( false !== strpos( $number_string, '.' ) ) {
		// a) correct decimal number - no changes, e.g.: 2.45
		// b) with comma as thousands separator, e.g.: 1,200.45 -> 1200.45
		return str_replace( ',', '', $number_string );
	} else {
		// a) integer - no changes, e.g.: 2
		// b) with comma as decimal separator, e.g.: 1200,45 -> 1200.45
		return str_replace( ',', '.', $number_string );
	}
}

Gel all possible locales as array in PHP

if ( ! function_exists( 'get_all_locales_array' ) ) {
	/**
	 * get_all_locales_array.
	 */
	function get_all_locales_array() {
		return array(
			'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',
		);
	}
}