'AFN', 'Lek' => 'ALL', '$' => array( 'USD', 'ARS', 'AUD', 'BSD', 'BBD', 'BMD', 'BND', 'CAD', 'KYD', 'CLP', 'COP', 'XCD', 'SVC', 'FJD', 'GYD', 'HKD', 'LRD', 'MXN', 'NAD', 'NZD', 'SGD', 'SBD', 'SRD', ), 'ƒ' => array( 'AWG', 'ANG', ), 'ман' => 'AZN', 'Br' => 'BYN', 'BZ$' => 'BZD', '$b' => 'BOB', 'KM' => 'BAM', 'P' => 'BWP', 'R$' => 'BRL', 'лв' => array( 'BGN', 'KZT', 'KGS', 'UZS', ), '៛' => 'KHR', '¥' => array( 'CNY', 'JPY', ), '₡' => 'CRC', 'kn' => 'HRK', '₱' => array( 'CUP', 'PHP', ), 'Kč' => 'CZK', 'kr' => array( 'DKK', 'ISK', 'NOK', 'SEK', ), 'RD$' => 'DOP', '£' => array( 'GBP', 'EGP', 'FKP', 'GIP', 'LBP', 'SHP', 'SYP', ), '€' => 'EUR', '¢' => 'GHS', 'Q' => 'GTQ', 'L' => 'HNL', 'Ft' => 'HUF', 'Rp' => 'IDR', '﷼' => array( 'IRR', 'QAR', 'OMR', 'SAR', 'YER', ), 'J$' => 'JMD', '₭' => 'LAK', 'ден' => 'MKD', 'RM' => 'MYR', '₨' => array( 'MUR', 'NPR', 'PKR', 'SCR', 'LKR', ), '₮' => 'MNT', 'MT' => 'MZN', '₪' => 'ILS', 'NT$' => 'TWD', 'C$' => 'NIO', '₦' => 'NGN', '₩' => array( 'KPW', 'KRW', ), 'B/.' => 'PAB', 'Gs' => 'PYG', 'S/.' => 'PEN', '$U' => 'UYU', 'zł' => 'PLN', 'lei' => 'RON', 'руб' => 'RUB', 'Дин.' => 'RSD', 'S' => 'SOS', 'R' => 'ZAR', 'CHF' => 'CHF', '฿' => 'THB', 'TT$' => 'TTD', '₴' => 'UAH', 'Bs' => 'VEF', '₫' => 'VND', ); private $currencies_codes_by_country_code = array( 'AF' => 'AFN', 'AL' => 'ALL', 'DZ' => 'DZD', 'AO' => 'AOA', 'AR' => 'ARS', 'AM' => 'AMD', 'AW' => 'AWG', 'AU' => 'AUD', 'AZ' => 'AZN', 'BS' => 'BSD', 'BH' => 'BHD', 'BD' => 'BDT', 'BB' => 'BBD', 'BY' => 'BYN', 'BY' => 'BYR', 'BZ' => 'BZD', 'BM' => 'BMD', 'BT' => 'BTN', 'BO' => 'BOB', 'BA' => 'BAM', 'BW' => 'BWP', 'BR' => 'BRL', 'BN' => 'BND', 'BG' => 'BGN', 'BI' => 'BIF', 'KH' => 'KHR', 'CA' => 'CAD', 'CV' => 'CVE', 'KY' => 'KYD', 'XP' => 'XPF', 'CL' => 'CLP', 'CN' => 'CNY', 'CO' => 'COP', 'KM' => 'KMF', 'CR' => 'CRC', 'HR' => 'HRK', 'CU' => 'CUC', 'CU' => 'CUP', 'CZ' => 'CZK', 'DK' => 'DKK', 'DJ' => 'DJF', 'DO' => 'DOP', 'XC' => 'XCD', 'EG' => 'EGP', 'SV' => 'SVC', 'ER' => 'ERN', 'ET' => 'ETB', 'EU' => 'EUR', 'FK' => 'FKP', 'FJ' => 'FJD', 'CD' => 'CDF', 'XA' => 'XAF', 'GM' => 'GMD', 'GE' => 'GEL', 'GH' => 'GHS', 'GI' => 'GIP', 'GT' => 'GTQ', 'GY' => 'GYD', 'HT' => 'HTG', 'HN' => 'HNL', 'HK' => 'HKD', 'HU' => 'HUF', 'IS' => 'ISK', 'IN' => 'INR', 'ID' => 'IDR', 'IR' => 'IRR', 'IQ' => 'IQD', 'JM' => 'JMD', 'JP' => 'JPY', 'JO' => 'JOD', 'KZ' => 'KZT', 'KE' => 'KES', 'KW' => 'KWD', 'KG' => 'KGS', 'LA' => 'LAK', 'LV' => 'LVL', 'LB' => 'LBP', 'LS' => 'LSL', 'LR' => 'LRD', 'LY' => 'LYD', 'LT' => 'LTL', 'MO' => 'MOP', 'MK' => 'MKD', 'MG' => 'MGA', 'MW' => 'MWK', 'MY' => 'MYR', 'MV' => 'MVR', 'MR' => 'MRO', 'MU' => 'MUR', 'MX' => 'MXN', 'MD' => 'MDL', 'MN' => 'MNT', 'MA' => 'MAD', 'MZ' => 'MZN', 'MM' => 'MMK', 'NA' => 'NAD', 'NP' => 'NPR', 'AN' => 'ANG', 'IL' => 'ILS', 'TW' => 'TWD', 'TR' => 'TRY', 'NZ' => 'NZD', 'NI' => 'NIO', 'NG' => 'NGN', 'KP' => 'KPW', 'NO' => 'NOK', 'PK' => 'PKR', 'PA' => 'PAB', 'PG' => 'PGK', 'PY' => 'PYG', 'PE' => 'PEN', 'UY' => 'UYU', 'PH' => 'PHP', 'PL' => 'PLN', 'GB' => 'GBP', 'QA' => 'QAR', 'OM' => 'OMR', 'RO' => 'RON', 'RU' => 'RUB', 'RW' => 'RWF', 'SH' => 'SHP', 'WS' => 'WST', 'ST' => 'STD', 'SA' => 'SAR', 'RS' => 'RSD', 'SC' => 'SCR', 'SL' => 'SLL', 'SG' => 'SGD', 'SB' => 'SBD', 'SO' => 'SOS', 'ZA' => 'ZAR', 'KR' => 'KRW', 'LK' => 'LKR', 'SR' => 'SRD', 'SZ' => 'SZL', 'SE' => 'SEK', 'CH' => 'CHF', 'SY' => 'SYP', 'TJ' => 'TJS', 'TZ' => 'TZS', 'TH' => 'THB', 'TO' => 'TOP', 'TT' => 'TTD', 'TN' => 'TND', 'TM' => 'TMT', 'AE' => 'AED', 'UG' => 'UGX', 'UA' => 'UAH', 'CL' => 'CLF', 'US' => 'USD', 'UZ' => 'UZS', 'VU' => 'VUV', 'VE' => 'VEF', 'VN' => 'VND', 'YE' => 'YER', 'ZM' => 'ZMK', 'ZM' => 'ZMW', ); private $currencies_by_code = array( 'AFN' => array( 'name' => 'Afghanistan, Afghani', 'code' => 'AFN', 'symbol' => '؋', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'ALL' => array( 'name' => 'Albania, Lek', 'code' => 'ALL', 'symbol' => 'Lek', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'DZD' => array( 'name' => 'Algerian Dinar', 'code' => 'DZD', 'symbol' => '', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'AOA' => array( 'name' => 'Angola, Kwanza', 'code' => 'AOA', 'symbol' => '', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'ARS' => array( 'name' => 'Argentine Peso', 'code' => 'ARS', 'symbol' => '$', 'decimal_places' => '2', 'display_format' => '#.###,##', 'thousands_separator' => '.', 'decimal_point' => ',', ), 'AMD' => array( 'name' => 'Armenian Dram', 'code' => 'AMD', 'symbol' => '', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'AWG' => array( 'name' => 'Aruban Guilder', 'code' => 'AWG', 'symbol' => 'ƒ', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'AUD' => array( 'name' => 'Australian Dollar', 'code' => 'AUD', 'symbol' => '$', 'decimal_places' => '2', 'display_format' => '# ###.##', 'thousands_separator' => ' ', 'decimal_point' => '.', ), 'AZN' => array( 'name' => 'Azerbaijanian Manat', 'code' => 'AZN', 'symbol' => 'ман', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'BSD' => array( 'name' => 'Bahamian Dollar', 'code' => 'BSD', 'symbol' => '$', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'BHD' => array( 'name' => 'Bahraini Dinar', 'code' => 'BHD', 'symbol' => '', 'decimal_places' => '3', 'display_format' => '#,###.###', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'BDT' => array( 'name' => 'Bangladesh, Taka', 'code' => 'BDT', 'symbol' => '', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'BBD' => array( 'name' => 'Barbados Dollar', 'code' => 'BBD', 'symbol' => '$', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'BYN' => array( 'name' => 'Belarussian Ruble', 'code' => 'BYN', 'symbol' => 'Br', 'decimal_places' => '0', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'BYR' => array( 'name' => 'Belarussian Ruble', 'code' => 'BYR', 'symbol' => '', 'decimal_places' => '0', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'BZD' => array( 'name' => 'Belize Dollar', 'code' => 'BZD', 'symbol' => 'BZ$', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'BMD' => array( 'name' => 'Bermudian Dollar', 'code' => 'BMD', 'symbol' => '$', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'BTN' => array( 'name' => 'Bhutan, Ngultrum', 'code' => 'BTN', 'symbol' => '', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'BOB' => array( 'name' => 'Bolivia, Boliviano', 'code' => 'BOB', 'symbol' => '$b', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'BAM' => array( 'name' => 'Bosnia and Herzegovina, Convertible Marks', 'code' => 'BAM', 'symbol' => 'KM', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'BWP' => array( 'name' => 'Botswana, Pula', 'code' => 'BWP', 'symbol' => 'P', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'BRL' => array( 'name' => 'Brazilian Real', 'code' => 'BRL', 'symbol' => 'R$', 'decimal_places' => '2', 'display_format' => '#.###,##', 'thousands_separator' => '.', 'decimal_point' => ',', ), 'BND' => array( 'name' => 'Brunei Dollar', 'code' => 'BND', 'symbol' => '$', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'BGN' => array( 'name' => 'Bulgarian Lev', 'code' => 'BGN', 'symbol' => 'лв', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'BIF' => array( 'name' => 'Burundi Franc', 'code' => 'BIF', 'symbol' => '', 'decimal_places' => '0', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'KHR' => array( 'name' => 'Cambodia, Riel', 'code' => 'KHR', 'symbol' => '៛', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'CAD' => array( 'name' => 'Canadian Dollar', 'code' => 'CAD', 'symbol' => '$', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'CVE' => array( 'name' => 'Cape Verde Escudo', 'code' => 'CVE', 'symbol' => '', 'decimal_places' => '0', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'KYD' => array( 'name' => 'Cayman Islands Dollar', 'code' => 'KYD', 'symbol' => '$', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'XPF' => array( 'name' => 'CFP Franc', 'code' => 'XPF', 'symbol' => '', 'decimal_places' => '0', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'CLP' => array( 'name' => 'Chilean Peso', 'code' => 'CLP', 'symbol' => '$', 'decimal_places' => '0', 'display_format' => '#.###', 'thousands_separator' => '.', 'decimal_point' => '', ), 'CNY' => array( 'name' => 'China Yuan Renminbi', 'code' => 'CNY', 'symbol' => '¥', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'COP' => array( 'name' => 'Colombian Peso', 'code' => 'COP', 'symbol' => '$', 'decimal_places' => '2', 'display_format' => '#.###,##', 'thousands_separator' => '.', 'decimal_point' => ',', ), 'KMF' => array( 'name' => 'Comoro Franc', 'code' => 'KMF', 'symbol' => '', 'decimal_places' => '0', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'CRC' => array( 'name' => 'Costa Rican Colon', 'code' => 'CRC', 'symbol' => '₡', 'decimal_places' => '2', 'display_format' => '#.###,##', 'thousands_separator' => '.', 'decimal_point' => ',', ), 'HRK' => array( 'name' => 'Croatian Kuna', 'code' => 'HRK', 'symbol' => 'kn', 'decimal_places' => '2', 'display_format' => '#.###,##', 'thousands_separator' => '.', 'decimal_point' => ',', ), 'CUC' => array( 'name' => 'Cuban Convertible Peso', 'code' => 'CUC', 'symbol' => '', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'CUP' => array( 'name' => 'Cuban Peso', 'code' => 'CUP', 'symbol' => '₱', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'CZK' => array( 'name' => 'Czech Koruna', 'code' => 'CZK', 'symbol' => 'Kč', 'decimal_places' => '2', 'display_format' => '#.###,##', 'thousands_separator' => '.', 'decimal_point' => ',', ), 'DKK' => array( 'name' => 'Danish Krone', 'code' => 'DKK', 'symbol' => 'kr', 'decimal_places' => '2', 'display_format' => '#.###,##', 'thousands_separator' => '.', 'decimal_point' => ',', ), 'DJF' => array( 'name' => 'Djibouti Franc', 'code' => 'DJF', 'symbol' => '', 'decimal_places' => '0', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'DOP' => array( 'name' => 'Dominican Peso', 'code' => 'DOP', 'symbol' => 'RD$', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'XCD' => array( 'name' => 'East Caribbean Dollar', 'code' => 'XCD', 'symbol' => '$', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'EGP' => array( 'name' => 'Egyptian Pound', 'code' => 'EGP', 'symbol' => '£', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'SVC' => array( 'name' => 'El Salvador Colon', 'code' => 'SVC', 'symbol' => '$', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'ERN' => array( 'name' => 'Eritrea, Nakfa', 'code' => 'ERN', 'symbol' => '', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'ETB' => array( 'name' => 'Ethiopian Birr', 'code' => 'ETB', 'symbol' => '', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'EUR' => array( 'name' => 'Euro', 'code' => 'EUR', 'symbol' => '€', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'FKP' => array( 'name' => 'Falkland Islands Pound', 'code' => 'FKP', 'symbol' => '£', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'FJD' => array( 'name' => 'Fiji Dollar', 'code' => 'FJD', 'symbol' => '$', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'CDF' => array( 'name' => 'Franc Congolais', 'code' => 'CDF', 'symbol' => '', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'XAF' => array( 'name' => 'Franc de la Communaute financi', 'code' => 'XAF', 'symbol' => '', 'decimal_places' => '0', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'GMD' => array( 'name' => 'Gambia, Dalasi', 'code' => 'GMD', 'symbol' => '', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'GEL' => array( 'name' => 'Georgia, Lari', 'code' => 'GEL', 'symbol' => '', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'GHS' => array( 'name' => 'Ghana Cedi', 'code' => 'GHS', 'symbol' => '¢', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'GIP' => array( 'name' => 'Gibraltar Pound', 'code' => 'GIP', 'symbol' => '£', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'GTQ' => array( 'name' => 'Guatemala, Quetzal', 'code' => 'GTQ', 'symbol' => 'Q', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'GYD' => array( 'name' => 'Guyana Dollar', 'code' => 'GYD', 'symbol' => '$', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'HTG' => array( 'name' => 'Haiti, Gourde', 'code' => 'HTG', 'symbol' => '', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'HNL' => array( 'name' => 'Honduras, Lempira', 'code' => 'HNL', 'symbol' => 'L', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'HKD' => array( 'name' => 'Hong Kong Dollar', 'code' => 'HKD', 'symbol' => '$', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'HUF' => array( 'name' => 'Hungary, Forint', 'code' => 'HUF', 'symbol' => 'Ft', 'decimal_places' => '0', 'display_format' => '#.###', 'thousands_separator' => '.', 'decimal_point' => '', ), 'ISK' => array( 'name' => 'Iceland Krona', 'code' => 'ISK', 'symbol' => 'kr', 'decimal_places' => '0', 'display_format' => '#.###', 'thousands_separator' => '.', 'decimal_point' => '', ), 'INR' => array( 'name' => 'Indian Rupee', 'code' => 'INR', 'symbol' => '0', 'decimal_places' => '2', 'display_format' => '#,##,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'IDR' => array( 'name' => 'Indonesia, Rupiah', 'code' => 'IDR', 'symbol' => 'Rp', 'decimal_places' => '2', 'display_format' => '#.###,##', 'thousands_separator' => '.', 'decimal_point' => ',', ), 'IRR' => array( 'name' => 'Iranian Rial', 'code' => 'IRR', 'symbol' => '﷼', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'IQD' => array( 'name' => 'Iraqi Dinar', 'code' => 'IQD', 'symbol' => '', 'decimal_places' => '3', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'JMD' => array( 'name' => 'Jamaican Dollar', 'code' => 'JMD', 'symbol' => 'J$', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'JPY' => array( 'name' => 'Japan, Yen', 'code' => 'JPY', 'symbol' => '¥', 'decimal_places' => '0', 'display_format' => '#,###', 'thousands_separator' => ',', 'decimal_point' => '', ), 'JOD' => array( 'name' => 'Jordanian Dinar', 'code' => 'JOD', 'symbol' => '', 'decimal_places' => '3', 'display_format' => '#,###.###', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'KZT' => array( 'name' => 'Kazakhstan, Tenge', 'code' => 'KZT', 'symbol' => 'лв', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'KES' => array( 'name' => 'Kenyan Shilling', 'code' => 'KES', 'symbol' => '', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'KWD' => array( 'name' => 'Kuwaiti Dinar', 'code' => 'KWD', 'symbol' => '', 'decimal_places' => '3', 'display_format' => '#,###.###', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'KGS' => array( 'name' => 'Kyrgyzstan, Som', 'code' => 'KGS', 'symbol' => 'лв', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'LAK' => array( 'name' => 'Laos, Kip', 'code' => 'LAK', 'symbol' => '₭', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'LVL' => array( 'name' => 'Latvian Lats', 'code' => 'LVL', 'symbol' => '', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'LBP' => array( 'name' => 'Lebanese Pound', 'code' => 'LBP', 'symbol' => '£', 'decimal_places' => '2', 'display_format' => '# ###', 'thousands_separator' => ' ', 'decimal_point' => '', ), 'LSL' => array( 'name' => 'Lesotho, Loti', 'code' => 'LSL', 'symbol' => '', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'LRD' => array( 'name' => 'Liberian Dollar', 'code' => 'LRD', 'symbol' => '$', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'LYD' => array( 'name' => 'Libyan Dinar', 'code' => 'LYD', 'symbol' => '', 'decimal_places' => '3', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'LTL' => array( 'name' => 'Lithuanian Litas', 'code' => 'LTL', 'symbol' => '', 'decimal_places' => '2', 'display_format' => '# ###,##', 'thousands_separator' => ' ', 'decimal_point' => ',', ), 'MOP' => array( 'name' => 'Macao, Pataca', 'code' => 'MOP', 'symbol' => '', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'MKD' => array( 'name' => 'Macedonia, Denar', 'code' => 'MKD', 'symbol' => 'ден', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'MGA' => array( 'name' => 'Malagasy Ariary', 'code' => 'MGA', 'symbol' => '', 'decimal_places' => '0', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'MWK' => array( 'name' => 'Malawi, Kwacha', 'code' => 'MWK', 'symbol' => '', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'MYR' => array( 'name' => 'Malaysian Ringgit', 'code' => 'MYR', 'symbol' => 'RM', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'MVR' => array( 'name' => 'Maldives, Rufiyaa', 'code' => 'MVR', 'symbol' => '', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'MRO' => array( 'name' => 'Mauritania, Ouguiya', 'code' => 'MRO', 'symbol' => '', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'MUR' => array( 'name' => 'Mauritius Rupee', 'code' => 'MUR', 'symbol' => '₨', 'decimal_places' => '2', 'display_format' => '#,###', 'thousands_separator' => ',', 'decimal_point' => '', ), 'MXN' => array( 'name' => 'Mexican Peso', 'code' => 'MXN', 'symbol' => '$', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'MDL' => array( 'name' => 'Moldovan Leu', 'code' => 'MDL', 'symbol' => '', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'MNT' => array( 'name' => 'Mongolia, Tugrik', 'code' => 'MNT', 'symbol' => '₮', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'MAD' => array( 'name' => 'Moroccan Dirham', 'code' => 'MAD', 'symbol' => '', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'MZN' => array( 'name' => 'Mozambique Metical', 'code' => 'MZN', 'symbol' => 'MT', 'decimal_places' => '0', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'MMK' => array( 'name' => 'Myanmar, Kyat', 'code' => 'MMK', 'symbol' => '', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'NAD' => array( 'name' => 'Namibian Dollar', 'code' => 'NAD', 'symbol' => '$', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'NPR' => array( 'name' => 'Nepalese Rupee', 'code' => 'NPR', 'symbol' => '₨', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'ANG' => array( 'name' => 'Netherlands Antillian Guilder', 'code' => 'ANG', 'symbol' => 'ƒ', 'decimal_places' => '2', 'display_format' => '#.###,##', 'thousands_separator' => '.', 'decimal_point' => ',', ), 'ILS' => array( 'name' => 'New Israeli Shekel', 'code' => 'ILS', 'symbol' => '₪', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'TWD' => array( 'name' => 'New Taiwan Dollar', 'code' => 'TWD', 'symbol' => 'NT$', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'TRY' => array( 'name' => 'New Turkish Lira', 'code' => 'TRY', 'symbol' => '0', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'NZD' => array( 'name' => 'New Zealand Dollar', 'code' => 'NZD', 'symbol' => '$', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'NIO' => array( 'name' => 'Nicaragua, Cordoba Oro', 'code' => 'NIO', 'symbol' => 'C$', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'NGN' => array( 'name' => 'Nigeria, Naira', 'code' => 'NGN', 'symbol' => '₦', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'KPW' => array( 'name' => 'North Korean Won', 'code' => 'KPW', 'symbol' => '₩', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'NOK' => array( 'name' => 'Norwegian Krone', 'code' => 'NOK', 'symbol' => 'kr', 'decimal_places' => '2', 'display_format' => '#.###,##', 'thousands_separator' => '.', 'decimal_point' => ',', ), 'PKR' => array( 'name' => 'Pakistan Rupee', 'code' => 'PKR', 'symbol' => '₨', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'PAB' => array( 'name' => 'Panama, Balboa', 'code' => 'PAB', 'symbol' => 'B/.', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'PGK' => array( 'name' => 'Papua New Guinea, Kina', 'code' => 'PGK', 'symbol' => '', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'PYG' => array( 'name' => 'Paraguay, Guarani', 'code' => 'PYG', 'symbol' => 'Gs', 'decimal_places' => '0', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'PEN' => array( 'name' => 'Peru, Nuevo Sol', 'code' => 'PEN', 'symbol' => 'S/.', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'UYU' => array( 'name' => 'Peso Uruguayo', 'code' => 'UYU', 'symbol' => '$U', 'decimal_places' => '2', 'display_format' => '#.###,##', 'thousands_separator' => '.', 'decimal_point' => ',', ), 'PHP' => array( 'name' => 'Philippine Peso', 'code' => 'PHP', 'symbol' => '₱', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'PLN' => array( 'name' => 'Poland, Zloty', 'code' => 'PLN', 'symbol' => 'zł', 'decimal_places' => '2', 'display_format' => '# ###,##', 'thousands_separator' => ' ', 'decimal_point' => ',', ), 'GBP' => array( 'name' => 'Pound Sterling', 'code' => 'GBP', 'symbol' => '£', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'QAR' => array( 'name' => 'Qatari Rial', 'code' => 'QAR', 'symbol' => '﷼', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'OMR' => array( 'name' => 'Rial Omani', 'code' => 'OMR', 'symbol' => '﷼', 'decimal_places' => '3', 'display_format' => '#,###.###', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'RON' => array( 'name' => 'Romania, New Leu', 'code' => 'RON', 'symbol' => 'lei', 'decimal_places' => '2', 'display_format' => '#.###,##', 'thousands_separator' => '.', 'decimal_point' => ',', ), 'RUB' => array( 'name' => 'Russian Ruble', 'code' => 'RUB', 'symbol' => 'руб', 'decimal_places' => '2', 'display_format' => '#.###,##', 'thousands_separator' => '.', 'decimal_point' => ',', ), 'RWF' => array( 'name' => 'Rwanda Franc', 'code' => 'RWF', 'symbol' => '', 'decimal_places' => '0', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'SHP' => array( 'name' => 'Saint Helena Pound', 'code' => 'SHP', 'symbol' => '£', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'WST' => array( 'name' => 'Samoa, Tala', 'code' => 'WST', 'symbol' => '', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'STD' => array( 'name' => 'Sao Tome and Principe, Dobra', 'code' => 'STD', 'symbol' => '', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'SAR' => array( 'name' => 'Saudi Riyal', 'code' => 'SAR', 'symbol' => '﷼', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'RSD' => array( 'name' => 'Serbian Dinar', 'code' => 'RSD', 'symbol' => 'Дин.', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'SCR' => array( 'name' => 'Seychelles Rupee', 'code' => 'SCR', 'symbol' => '₨', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'SLL' => array( 'name' => 'Sierra Leone, Leone', 'code' => 'SLL', 'symbol' => '', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'SGD' => array( 'name' => 'Singapore Dollar', 'code' => 'SGD', 'symbol' => '$', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'SBD' => array( 'name' => 'Solomon Islands Dollar', 'code' => 'SBD', 'symbol' => '$', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'SOS' => array( 'name' => 'Somali Shilling', 'code' => 'SOS', 'symbol' => 'S', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'ZAR' => array( 'name' => 'South Africa, Rand', 'code' => 'ZAR', 'symbol' => 'R', 'decimal_places' => '2', 'display_format' => '# ###.##', 'thousands_separator' => ' ', 'decimal_point' => '.', ), 'KRW' => array( 'name' => 'South Korea, Won', 'code' => 'KRW', 'symbol' => '₩', 'decimal_places' => '0', 'display_format' => '#,###', 'thousands_separator' => ',', 'decimal_point' => '', ), 'LKR' => array( 'name' => 'Sri Lanka Rupee', 'code' => 'LKR', 'symbol' => '₨', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'SRD' => array( 'name' => 'Surinam Dollar', 'code' => 'SRD', 'symbol' => '$', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'SZL' => array( 'name' => 'Swaziland, Lilangeni', 'code' => 'SZL', 'symbol' => '', 'decimal_places' => '2', 'display_format' => '#, ###.##', 'thousands_separator' => ', ', 'decimal_point' => '.', ), 'SEK' => array( 'name' => 'Swedish Krona', 'code' => 'SEK', 'symbol' => 'kr', 'decimal_places' => '2', 'display_format' => '# ###,##', 'thousands_separator' => ' ', 'decimal_point' => ',', ), 'CHF' => array( 'name' => 'Swiss Franc', 'code' => 'CHF', 'symbol' => 'CHF', 'decimal_places' => '2', 'display_format' => '#\'###.##', 'thousands_separator' => '\'', 'decimal_point' => '.', ), 'SYP' => array( 'name' => 'Syrian Pound', 'code' => 'SYP', 'symbol' => '£', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'TJS' => array( 'name' => 'Tajikistan, Somoni', 'code' => 'TJS', 'symbol' => '', 'decimal_places' => '0', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'TZS' => array( 'name' => 'Tanzanian Shilling', 'code' => 'TZS', 'symbol' => '', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'THB' => array( 'name' => 'Thailand, Baht', 'code' => 'THB', 'symbol' => '฿', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'TOP' => array( 'name' => 'Tonga, Paanga', 'code' => 'TOP', 'symbol' => '', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'TTD' => array( 'name' => 'Trinidad and Tobago Dollar', 'code' => 'TTD', 'symbol' => 'TT$', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'TND' => array( 'name' => 'Tunisian Dinar', 'code' => 'TND', 'symbol' => '', 'decimal_places' => '3', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'TMT' => array( 'name' => 'Turkmenistani New Manat', 'code' => 'TMT', 'symbol' => '', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'AED' => array( 'name' => 'UAE Dirham', 'code' => 'AED', 'symbol' => '', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'UGX' => array( 'name' => 'Uganda Shilling', 'code' => 'UGX', 'symbol' => '', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'UAH' => array( 'name' => 'Ukraine, Hryvnia', 'code' => 'UAH', 'symbol' => '₴', 'decimal_places' => '2', 'display_format' => '# ###,##', 'thousands_separator' => ' ', 'decimal_point' => ',', ), 'CLF' => array( 'name' => 'Unidad de Fomento', 'code' => 'CLF', 'symbol' => '', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'USD' => array( 'name' => 'US Dollar', 'code' => 'USD', 'symbol' => '$', 'decimal_places' => '2', 'display_format' => '#,###.##', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'UZS' => array( 'name' => 'Uzbekistan Sum', 'code' => 'UZS', 'symbol' => 'лв', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'VUV' => array( 'name' => 'Vanuatu, Vatu', 'code' => 'VUV', 'symbol' => '', 'decimal_places' => '0', 'display_format' => '#,###', 'thousands_separator' => ',', 'decimal_point' => '', ), 'VEF' => array( 'name' => 'Venezuela Bolivares Fuertes', 'code' => 'VEF', 'symbol' => 'Bs', 'decimal_places' => '2', 'display_format' => '#.###,##', 'thousands_separator' => '.', 'decimal_point' => ',', ), 'VND' => array( 'name' => 'Viet Nam, Dong', 'code' => 'VND', 'symbol' => '₫', 'decimal_places' => '2', 'display_format' => '#.###', 'thousands_separator' => '.', 'decimal_point' => '', ), 'YER' => array( 'name' => 'Yemeni Rial', 'code' => 'YER', 'symbol' => '﷼', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'ZMK' => array( 'name' => 'Zambia Kwacha', 'code' => 'ZMK', 'symbol' => '', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), 'ZMW' => array( 'name' => 'Zambia Kwacha', 'code' => 'ZMW', 'symbol' => '', 'decimal_places' => '2', 'display_format' => '', 'thousands_separator' => ',', 'decimal_point' => '.', ), ); public function get_currencies() { return $this->currencies_by_code; } public function get_currency( $currency_code ) { return $this->get_default( $this->currencies_by_code, $currency_code ); } private function get_default( $array, $key, $default = null ) { return isset( $array[ $key ] ) ? $array[ $key ] : $default; } public function find_currencies_by_symbol( $currency_symbol ) { $currencies_codes = $this->find_currency_codes_by_symbol( $currency_symbol ); if ( is_null( $currencies_codes ) ) { return array(); } $currencies = array(); foreach ( $currencies_codes as $currency_code ) { $currencies[] = $this->get_currency( $currency_code ); } return $currencies; } public function find_currency_codes_by_symbol( $symbol ) { return (array) $this->get_default( $this->currencies_codes_by_symbol, $symbol ); } public function get_currency_from_country_code( $country_code ) { $currency_code = $this->get_currency_code_from_country_code( $country_code ); if ( is_null( $currency_code ) ) { return null; } return $this->get_currency( $currency_code ); } public function get_currency_code_from_country_code( $country_code ) { return $this->get_default( $this->currencies_codes_by_country_code, $country_code ); } }