I18N
[ class tree: I18N ] [ index: I18N ] [ all elements ]

Source for file Country.php

Documentation is available at Country.php

  1. <?php
  2. /* vim: set expandtab tabstop=4 shiftwidth=4: */
  3. // +----------------------------------------------------------------------+
  4. // | PHP version 4.0                                                      |
  5. // +----------------------------------------------------------------------+
  6. // | Copyright (c) 1997, 1998, 1999, 2000, 2001, 2002, 2003 The PHP Group       |
  7. // +----------------------------------------------------------------------+
  8. // | This source file is subject to version 2.0 of the PHP license,       |
  9. // | that is bundled with this package in the file LICENSE, and is        |
  10. // | available at through the world-wide-web at                           |
  11. // | http://www.php.net/license/2_02.txt.                                 |
  12. // | If you did not receive a copy of the PHP license and are unable to   |
  13. // | obtain it through the world-wide-web, please send a note to          |
  14. // | license@php.net so we can mail you a copy immediately.               |
  15. // +----------------------------------------------------------------------+
  16. // | Authors: Naoki Shima <murahachibu@php.net>                           |
  17. // |                                                                      |
  18. // +----------------------------------------------------------------------+//
  19. // $Id: Country.php 110339 2003-01-04 11:55:29Z mj $
  20.  
  21. require_once('I18N/Common.php');
  22.  
  23. class I18N_Country extends I18N_Common {
  24.  
  25.     // {{ constructor
  26.  
  27.     /**
  28.      * Save list of ISO-3166 two letter country code to country name mapping to its initiating object
  29.      *
  30.      * @return: void
  31.      * @access: public
  32.      */
  33.     function I18N_Country()
  34.     {
  35.     // call constructor of parent class
  36.         parent::_constructor();
  37.  
  38.         /**
  39.          * List of ISO-3166 
  40.          * Two letter code to Country name mapping.
  41.          * @type  : array
  42.          * @access: private
  43.          */
  44.         $this->_codes = array(
  45.             'AF' => 'AFGHANISTAN',
  46.             'AL' => 'ALBANIA',
  47.             'DZ' => 'ALGERIA',
  48.             'AS' => 'AMERICAN SAMOA',
  49.             'AD' => 'ANDORRA',
  50.             'AO' => 'ANGOLA',
  51.             'AI' => 'ANGUILLA',
  52.             'AQ' => 'ANTARCTICA',
  53.             'AG' => 'ANTIGUA AND BARBUDA',
  54.             'AR' => 'ARGENTINA',
  55.             'AM' => 'ARMENIA',
  56.             'AW' => 'ARUBA',
  57.             'AU' => 'AUSTRALIA',
  58.             'AT' => 'AUSTRIA',
  59.             'AZ' => 'AZERBAIJAN',
  60.             'BS' => 'BAHAMAS',
  61.             'BH' => 'BAHRAIN',
  62.             'BD' => 'BANGLADESH',
  63.             'BB' => 'BARBADOS',
  64.             'BY' => 'BELARUS',
  65.             'BE' => 'BELGIUM',
  66.             'BZ' => 'BELIZE',
  67.             'BJ' => 'BENIN',
  68.             'BM' => 'BERMUDA',
  69.             'BT' => 'BHUTAN',
  70.             'BO' => 'BOLIVIA',
  71.             'BA' => 'BOSNIA AND HERZEGOWINA',
  72.             'BW' => 'BOTSWANA',
  73.             'BV' => 'BOUVET ISLAND',
  74.             'BR' => 'BRAZIL',
  75.             'IO' => 'BRITISH INDIAN OCEAN TERRITORY',
  76.             'BN' => 'BRUNEI DARUSSALAM',
  77.             'BG' => 'BULGARIA',
  78.             'BF' => 'BURKINA FASO',
  79.             'BI' => 'BURUNDI',
  80.             'KH' => 'CAMBODIA',
  81.             'CM' => 'CAMEROON',
  82.             'CA' => 'CANADA',
  83.             'CV' => 'CAPE VERDE',
  84.             'KY' => 'CAYMAN ISLANDS',
  85.             'CF' => 'CENTRAL AFRICAN REPUBLIC',
  86.             'TD' => 'CHAD',
  87.             'CL' => 'CHILE',
  88.             'CN' => 'CHINA',
  89.             'CX' => 'CHRISTMAS ISLAND',
  90.             'CC' => 'COCOS (KEELING) ISLANDS',
  91.             'CO' => 'COLOMBIA',
  92.             'KM' => 'COMOROS',
  93.             'CG' => 'CONGO',
  94.             'CD' => 'CONGO, THE DEMOCRATIC REPUBLIC OF THE',
  95.             'CK' => 'COOK ISLANDS',
  96.             'CR' => 'COSTA RICA',
  97.             'CI' => 'COTE D\'IVOIRE',
  98.             'HR' => 'CROATIA (local name: Hrvatska)',
  99.             'CU' => 'CUBA',
  100.             'CY' => 'CYPRUS',
  101.             'CZ' => 'CZECH REPUBLIC',
  102.             'DK' => 'DENMARK',
  103.             'DJ' => 'DJIBOUTI',
  104.             'DM' => 'DOMINICA',
  105.             'DO' => 'DOMINICAN REPUBLIC',
  106.             'TP' => 'EAST TIMOR',
  107.             'EC' => 'ECUADOR',
  108.             'EG' => 'EGYPT',
  109.             'SV' => 'EL SALVADOR',
  110.             'GQ' => 'EQUATORIAL GUINEA',
  111.             'ER' => 'ERITREA',
  112.             'EE' => 'ESTONIA',
  113.             'ET' => 'ETHIOPIA',
  114.             'FK' => 'FALKLAND ISLANDS (MALVINAS)',
  115.             'FO' => 'FAROE ISLANDS',
  116.             'FJ' => 'FIJI',
  117.             'FI' => 'FINLAND',
  118.             'FR' => 'FRANCE',
  119.             'FX' => 'FRANCE, METROPOLITAN',
  120.             'GF' => 'FRENCH GUIANA',
  121.             'PF' => 'FRENCH POLYNESIA',
  122.             'TF' => 'FRENCH SOUTHERN TERRITORIES',
  123.             'GA' => 'GABON',
  124.             'GM' => 'GAMBIA',
  125.             'GE' => 'GEORGIA',
  126.             'DE' => 'GERMANY',
  127.             'GH' => 'GHANA',
  128.             'GI' => 'GIBRALTAR',
  129.             'GR' => 'GREECE',
  130.             'GL' => 'GREENLAND',
  131.             'GD' => 'GRENADA',
  132.             'GP' => 'GUADELOUPE',
  133.             'GU' => 'GUAM',
  134.             'GT' => 'GUATEMALA',
  135.             'GN' => 'GUINEA',
  136.             'GW' => 'GUINEA-BISSAU',
  137.             'GY' => 'GUYANA',
  138.             'HT' => 'HAITI',
  139.             'HM' => 'HEARD AND MC DONALD ISLANDS',
  140.             'VA' => 'HOLY SEE (VATICAN CITY STATE)',
  141.             'HN' => 'HONDURAS',
  142.             'HK' => 'HONG KONG',
  143.             'HU' => 'HUNGARY',
  144.             'IS' => 'ICELAND',
  145.             'IN' => 'INDIA',
  146.             'ID' => 'INDONESIA',
  147.             'IR' => 'IRAN (ISLAMIC REPUBLIC OF)',
  148.             'IQ' => 'IRAQ',
  149.             'IE' => 'IRELAND',
  150.             'IL' => 'ISRAEL',
  151.             'IT' => 'ITALY',
  152.             'JM' => 'JAMAICA',
  153.             'JP' => 'JAPAN',
  154.             'JO' => 'JORDAN',
  155.             'KZ' => 'KAZAKHSTAN',
  156.             'KE' => 'KENYA',
  157.             'KI' => 'KIRIBATI',
  158.             'KP' => 'KOREA, DEMOCRATIC PEOPLE\'S REPUBLIC OF',
  159.             'KR' => 'KOREA, REPUBLIC OF',
  160.             'KW' => 'KUWAIT',
  161.             'KG' => 'KYRGYZSTAN',
  162.             'LA' => 'LAO PEOPLE\'S DEMOCRATIC REPUBLIC',
  163.             'LV' => 'LATVIA',
  164.             'LB' => 'LEBANON',
  165.             'LS' => 'LESOTHO',
  166.             'LR' => 'LIBERIA',
  167.             'LY' => 'LIBYAN ARAB JAMAHIRIYA',
  168.             'LI' => 'LIECHTENSTEIN',
  169.             'LT' => 'LITHUANIA',
  170.             'LU' => 'LUXEMBOURG',
  171.             'MO' => 'MACAU',
  172.             'MK' => 'MACEDONIA, THE FORMER YUGOSLAV REPUBLIC OF',
  173.             'MG' => 'MADAGASCAR',
  174.             'MW' => 'MALAWI',
  175.             'MY' => 'MALAYSIA',
  176.             'MV' => 'MALDIVES',
  177.             'ML' => 'MALI',
  178.             'MT' => 'MALTA',
  179.             'MH' => 'MARSHALL ISLANDS',
  180.             'MQ' => 'MARTINIQUE',
  181.             'MR' => 'MAURITANIA',
  182.             'MU' => 'MAURITIUS',
  183.             'YT' => 'MAYOTTE',
  184.             'MX' => 'MEXICO',
  185.             'FM' => 'MICRONESIA, FEDERATED STATES OF',
  186.             'MD' => 'MOLDOVA, REPUBLIC OF',
  187.             'MC' => 'MONACO',
  188.             'MN' => 'MONGOLIA',
  189.             'MS' => 'MONTSERRAT',
  190.             'MA' => 'MOROCCO',
  191.             'MZ' => 'MOZAMBIQUE',
  192.             'MM' => 'MYANMAR',
  193.             'NA' => 'NAMIBIA',
  194.             'NR' => 'NAURU',
  195.             'NP' => 'NEPAL',
  196.             'NL' => 'NETHERLANDS',
  197.             'AN' => 'NETHERLANDS ANTILLES',
  198.             'NC' => 'NEW CALEDONIA',
  199.             'NZ' => 'NEW ZEALAND',
  200.             'NI' => 'NICARAGUA',
  201.             'NE' => 'NIGER',
  202.             'NG' => 'NIGERIA',
  203.             'NU' => 'NIUE',
  204.             'NF' => 'NORFOLK ISLAND',
  205.             'MP' => 'NORTHERN MARIANA ISLANDS',
  206.             'NO' => 'NORWAY',
  207.             'OM' => 'OMAN',
  208.             'PK' => 'PAKISTAN',
  209.             'PW' => 'PALAU',
  210.             'PS' => 'PALESTINIAN TERRITORY, OCCUPIED',
  211.             'PA' => 'PANAMA',
  212.             'PG' => 'PAPUA NEW GUINEA',
  213.             'PY' => 'PARAGUAY',
  214.             'PE' => 'PERU',
  215.             'PH' => 'PHILIPPINES',
  216.             'PN' => 'PITCAIRN',
  217.             'PL' => 'POLAND',
  218.             'PT' => 'PORTUGAL',
  219.             'PR' => 'PUERTO RICO',
  220.             'QA' => 'QATAR',
  221.             'RE' => 'REUNION',
  222.             'RO' => 'ROMANIA',
  223.             'RU' => 'RUSSIAN FEDERATION',
  224.             'RW' => 'RWANDA',
  225.             'KN' => 'SAINT KITTS AND NEVIS',
  226.             'LC' => 'SAINT LUCIA',
  227.             'VC' => 'SAINT VINCENT AND THE GRENADINES',
  228.             'WS' => 'SAMOA',
  229.             'SM' => 'SAN MARINO',
  230.             'ST' => 'SAO TOME AND PRINCIPE',
  231.             'SA' => 'SAUDI ARABIA',
  232.             'SN' => 'SENEGAL',
  233.             'SC' => 'SEYCHELLES',
  234.             'SL' => 'SIERRA LEONE',
  235.             'SG' => 'SINGAPORE',
  236.             'SK' => 'SLOVAKIA (Slovak Republic)',
  237.             'SI' => 'SLOVENIA',
  238.             'SB' => 'SOLOMON ISLANDS',
  239.             'SO' => 'SOMALIA',
  240.             'ZA' => 'SOUTH AFRICA',
  241.             'GS' => 'SOUTH GEORGIA AND THE SOUTH SANDWICH ISLANDS',
  242.             'ES' => 'SPAIN',
  243.             'LK' => 'SRI LANKA',
  244.             'SH' => 'ST. HELENA',
  245.             'PM' => 'ST. PIERRE AND MIQUELON',
  246.             'SD' => 'SUDAN',
  247.             'SR' => 'SURINAME',
  248.             'SJ' => 'SVALBARD AND JAN MAYEN ISLANDS',
  249.             'SZ' => 'SWAZILAND',
  250.             'SE' => 'SWEDEN',
  251.             'CH' => 'SWITZERLAND',
  252.             'SY' => 'SYRIAN ARAB REPUBLIC',
  253.             'TW' => 'TAIWAN, PROVINCE OF CHINA',
  254.             'TJ' => 'TAJIKISTAN',
  255.             'TZ' => 'TANZANIA, UNITED REPUBLIC OF',
  256.             'TH' => 'THAILAND',
  257.             'TG' => 'TOGO',
  258.             'TK' => 'TOKELAU',
  259.             'TO' => 'TONGA',
  260.             'TT' => 'TRINIDAD AND TOBAGO',
  261.             'TN' => 'TUNISIA',
  262.             'TR' => 'TURKEY',
  263.             'TM' => 'TURKMENISTAN',
  264.             'TC' => 'TURKS AND CAICOS ISLANDS',
  265.             'TV' => 'TUVALU',
  266.             'UG' => 'UGANDA',
  267.             'UA' => 'UKRAINE',
  268.             'AE' => 'UNITED ARAB EMIRATES',
  269.             'GB' => 'UNITED KINGDOM',
  270.             'US' => 'UNITED STATES',
  271.             'UM' => 'UNITED STATES MINOR OUTLYING ISLANDS',
  272.             'UY' => 'URUGUAY',
  273.             'UZ' => 'UZBEKISTAN',
  274.             'VU' => 'VANUATU',
  275.             'VE' => 'VENEZUELA',
  276.             'VN' => 'VIET NAM',
  277.             'VG' => 'VIRGIN ISLANDS (BRITISH)',
  278.             'VI' => 'VIRGIN ISLANDS (U.S.)',
  279.             'WF' => 'WALLIS AND FUTUNA ISLANDS',
  280.             'EH' => 'WESTERN SAHARA',
  281.             'YE' => 'YEMEN',
  282.             'YU' => 'YUGOSLAVIA',
  283.             'ZM' => 'ZAMBIA',
  284.             'ZW' => 'ZIMBABWE'
  285.         );
  286.     }
  287.  
  288.     // }}
  289.     // {{ fake constructor
  290.  
  291.     /**
  292.      * call actual constructor
  293.      * 
  294.      *  @return: void
  295.      *  @access: private
  296.      */
  297.     function _constructor()
  298.     {
  299.         $this->I18N_Country();
  300.     }
  301.  
  302.     // }}
  303.     // {{ isValidCode()
  304.  
  305.     function isValidCode($code)
  306.     {
  307.         return isset($this->_codes[strtoupper($code)]);
  308.     }
  309.  
  310.     // }}
  311.     // {{ getName()
  312.  
  313.     /**
  314.      * Return name of the country for country code passed
  315.      * 
  316.      *  @param string     country code
  317.      * 
  318.      *  @return: string     name of the country
  319.      *  @access: public
  320.      */
  321.     function getName($code '')
  322.     {
  323.         return $this->isValidCode($code strtoupper($code)) $this->_codes[$code: false;
  324.     }
  325.  
  326.     // }}
  327. }
  328. ?>

Documentation generated on Mon, 11 Mar 2019 15:36:10 -0400 by phpDocumentor 1.4.4. PEAR Logo Copyright © PHP Group 2004.