2012-08-27 48 views
7

Có cách nào để chuyển đổi tên quốc gia thành viết tắt mã quốc gia không? Hoặc một số chức năng php?Chuyển đổi tên quốc gia thành Mã quốc gia Viết tắt php

Vì vậy, khi "Úc" của nó, nó sẽ được đổi thành "AU"

+0

Tôi không nghĩ như vậy .. Tôi muốn đã làm nó trên của riêng tôi –

+2

Tạo một bảng trong cơ sở dữ liệu của bạn mà ánh xạ tên đầy đủ để viết tắt, sau đó chuyển đổi. Hoặc bạn có thể sử dụng một mảng, nhưng điều đó có thể tẻ nhạt. – Matt

+0

Nhưng thats hơn 239 quốc gia, thats quá nhiều mã hóa phải có cách để làm điều đó dễ dàng hơn – user1299846

Trả lời

24

Bản thân PHP không có kiến ​​thức về các giá trị này. Bạn phải tạo mã của riêng bạn:

Phương pháp 1:

Tạo một mảng như:

$COUNTRY = array(
    "Australia" => "AU", 
    "Germany" => "GER" 
    ... 
); 

Sau đó, chỉ cần sử dụng các giá trị pre0stored:

echo $COUNTRY['Australia']; 

Phương pháp 2 (được đề xuất):

Store giá trị vào DB:

+-----------+------+ 
| Country | Code | 
+-----------+------+ 
| Australia | AU | 
| Germany | GER | 
... 
+-----------+------+ 

Và Tiếp cận với truy vấn đơn giản:

SELECT Code FROM country_db WHERE Country = 'Australia'; 

EDIT

CREATE TABLE 
    country_code 
(
    code, 
    country 
); 

INSERT INTO 
    country_code 
    (code, country) 
VALUES 
    ('AF', 'Afghanistan'), 
    ('AX', 'Aland Islands'), 
    ('AL', 'Albania'), 
    ('DZ', 'Algeria'), 
    ('AS', 'American Samoa'), 
    ('AD', 'Andorra'), 
    ('AO', 'Angola'), 
    ('AI', 'Anguilla'), 
    ('AQ', 'Antarctica'), 
    ('AG', 'Antigua and Barbuda'), 
    ('AR', 'Argentina'), 
    ('AM', 'Armenia'), 
    ('AW', 'Aruba'), 
    ('AU', 'Australia'), 
    ('AT', 'Austria'), 
    ('AZ', 'Azerbaijan'), 
    ('BS', 'Bahamas the'), 
    ('BH', 'Bahrain'), 
    ('BD', 'Bangladesh'), 
    ('BB', 'Barbados'), 
    ('BY', 'Belarus'), 
    ('BE', 'Belgium'), 
    ('BZ', 'Belize'), 
    ('BJ', 'Benin'), 
    ('BM', 'Bermuda'), 
    ('BT', 'Bhutan'), 
    ('BO', 'Bolivia'), 
    ('BA', 'Bosnia and Herzegovina'), 
    ('BW', 'Botswana'), 
    ('BV', 'Bouvet Island (Bouvetoya)'), 
    ('BR', 'Brazil'), 
    ('IO', 'British Indian Ocean Territory (Chagos Archipelago)'), 
    ('VG', 'British Virgin Islands'), 
    ('BN', 'Brunei Darussalam'), 
    ('BG', 'Bulgaria'), 
    ('BF', 'Burkina Faso'), 
    ('BI', 'Burundi'), 
    ('KH', 'Cambodia'), 
    ('CM', 'Cameroon'), 
    ('CA', 'Canada'), 
    ('CV', 'Cape Verde'), 
    ('KY', 'Cayman Islands'), 
    ('CF', 'Central African Republic'), 
    ('TD', 'Chad'), 
    ('CL', 'Chile'), 
    ('CN', 'China'), 
    ('CX', 'Christmas Island'), 
    ('CC', 'Cocos (Keeling) Islands'), 
    ('CO', 'Colombia'), 
    ('KM', 'Comoros the'), 
    ('CD', 'Congo'), 
    ('CG', 'Congo the'), 
    ('CK', 'Cook Islands'), 
    ('CR', 'Costa Rica'), 
    ('CI', 'Cote d\'Ivoire'), 
    ('HR', 'Croatia'), 
    ('CU', 'Cuba'), 
    ('CY', 'Cyprus'), 
    ('CZ', 'Czech Republic'), 
    ('DK', 'Denmark'), 
    ('DJ', 'Djibouti'), 
    ('DM', 'Dominica'), 
    ('DO', 'Dominican Republic'), 
    ('EC', 'Ecuador'), 
    ('EG', 'Egypt'), 
    ('SV', 'El Salvador'), 
    ('GQ', 'Equatorial Guinea'), 
    ('ER', 'Eritrea'), 
    ('EE', 'Estonia'), 
    ('ET', 'Ethiopia'), 
    ('FO', 'Faroe Islands'), 
    ('FK', 'Falkland Islands (Malvinas)'), 
    ('FJ', 'Fiji the Fiji Islands'), 
    ('FI', 'Finland'), 
    ('FR', 'France, French Republic'), 
    ('GF', 'French Guiana'), 
    ('PF', 'French Polynesia'), 
    ('TF', 'French Southern Territories'), 
    ('GA', 'Gabon'), 
    ('GM', 'Gambia the'), 
    ('GE', 'Georgia'), 
    ('DE', 'Germany'), 
    ('GH', 'Ghana'), 
    ('GI', 'Gibraltar'), 
    ('GR', 'Greece'), 
    ('GL', 'Greenland'), 
    ('GD', 'Grenada'), 
    ('GP', 'Guadeloupe'), 
    ('GU', 'Guam'), 
    ('GT', 'Guatemala'), 
    ('GG', 'Guernsey'), 
    ('GN', 'Guinea'), 
    ('GW', 'Guinea-Bissau'), 
    ('GY', 'Guyana'), 
    ('HT', 'Haiti'), 
    ('HM', 'Heard Island and McDonald Islands'), 
    ('VA', 'Holy See (Vatican City State)'), 
    ('HN', 'Honduras'), 
    ('HK', 'Hong Kong'), 
    ('HU', 'Hungary'), 
    ('IS', 'Iceland'), 
    ('IN', 'India'), 
    ('ID', 'Indonesia'), 
    ('IR', 'Iran'), 
    ('IQ', 'Iraq'), 
    ('IE', 'Ireland'), 
    ('IM', 'Isle of Man'), 
    ('IL', 'Israel'), 
    ('IT', 'Italy'), 
    ('JM', 'Jamaica'), 
    ('JP', 'Japan'), 
    ('JE', 'Jersey'), 
    ('JO', 'Jordan'), 
    ('KZ', 'Kazakhstan'), 
    ('KE', 'Kenya'), 
    ('KI', 'Kiribati'), 
    ('KP', 'Korea'), 
    ('KR', 'Korea'), 
    ('KW', 'Kuwait'), 
    ('KG', 'Kyrgyz Republic'), 
    ('LA', 'Lao'), 
    ('LV', 'Latvia'), 
    ('LB', 'Lebanon'), 
    ('LS', 'Lesotho'), 
    ('LR', 'Liberia'), 
    ('LY', 'Libyan Arab Jamahiriya'), 
    ('LI', 'Liechtenstein'), 
    ('LT', 'Lithuania'), 
    ('LU', 'Luxembourg'), 
    ('MO', 'Macao'), 
    ('MK', 'Macedonia'), 
    ('MG', 'Madagascar'), 
    ('MW', 'Malawi'), 
    ('MY', 'Malaysia'), 
    ('MV', 'Maldives'), 
    ('ML', 'Mali'), 
    ('MT', 'Malta'), 
    ('MH', 'Marshall Islands'), 
    ('MQ', 'Martinique'), 
    ('MR', 'Mauritania'), 
    ('MU', 'Mauritius'), 
    ('YT', 'Mayotte'), 
    ('MX', 'Mexico'), 
    ('FM', 'Micronesia'), 
    ('MD', 'Moldova'), 
    ('MC', 'Monaco'), 
    ('MN', 'Mongolia'), 
    ('ME', 'Montenegro'), 
    ('MS', 'Montserrat'), 
    ('MA', 'Morocco'), 
    ('MZ', 'Mozambique'), 
    ('MM', 'Myanmar'), 
    ('NA', 'Namibia'), 
    ('NR', 'Nauru'), 
    ('NP', 'Nepal'), 
    ('AN', 'Netherlands Antilles'), 
    ('NL', 'Netherlands the'), 
    ('NC', 'New Caledonia'), 
    ('NZ', 'New Zealand'), 
    ('NI', 'Nicaragua'), 
    ('NE', 'Niger'), 
    ('NG', 'Nigeria'), 
    ('NU', 'Niue'), 
    ('NF', 'Norfolk Island'), 
    ('MP', 'Northern Mariana Islands'), 
    ('NO', 'Norway'), 
    ('OM', 'Oman'), 
    ('PK', 'Pakistan'), 
    ('PW', 'Palau'), 
    ('PS', 'Palestinian Territory'), 
    ('PA', 'Panama'), 
    ('PG', 'Papua New Guinea'), 
    ('PY', 'Paraguay'), 
    ('PE', 'Peru'), 
    ('PH', 'Philippines'), 
    ('PN', 'Pitcairn Islands'), 
    ('PL', 'Poland'), 
    ('PT', 'Portugal, Portuguese Republic'), 
    ('PR', 'Puerto Rico'), 
    ('QA', 'Qatar'), 
    ('RE', 'Reunion'), 
    ('RO', 'Romania'), 
    ('RU', 'Russian Federation'), 
    ('RW', 'Rwanda'), 
    ('BL', 'Saint Barthelemy'), 
    ('SH', 'Saint Helena'), 
    ('KN', 'Saint Kitts and Nevis'), 
    ('LC', 'Saint Lucia'), 
    ('MF', 'Saint Martin'), 
    ('PM', 'Saint Pierre and Miquelon'), 
    ('VC', 'Saint Vincent and the Grenadines'), 
    ('WS', 'Samoa'), 
    ('SM', 'San Marino'), 
    ('ST', 'Sao Tome and Principe'), 
    ('SA', 'Saudi Arabia'), 
    ('SN', 'Senegal'), 
    ('RS', 'Serbia'), 
    ('SC', 'Seychelles'), 
    ('SL', 'Sierra Leone'), 
    ('SG', 'Singapore'), 
    ('SK', 'Slovakia (Slovak Republic)'), 
    ('SI', 'Slovenia'), 
    ('SB', 'Solomon Islands'), 
    ('SO', 'Somalia, Somali Republic'), 
    ('ZA', 'South Africa'), 
    ('GS', 'South Georgia and the South Sandwich Islands'), 
    ('ES', 'Spain'), 
    ('LK', 'Sri Lanka'), 
    ('SD', 'Sudan'), 
    ('SR', 'Suriname'), 
    ('SJ', 'Svalbard & Jan Mayen Islands'), 
    ('SZ', 'Swaziland'), 
    ('SE', 'Sweden'), 
    ('CH', 'Switzerland, Swiss Confederation'), 
    ('SY', 'Syrian Arab Republic'), 
    ('TW', 'Taiwan'), 
    ('TJ', 'Tajikistan'), 
    ('TZ', 'Tanzania'), 
    ('TH', 'Thailand'), 
    ('TL', 'Timor-Leste'), 
    ('TG', 'Togo'), 
    ('TK', 'Tokelau'), 
    ('TO', 'Tonga'), 
    ('TT', 'Trinidad and Tobago'), 
    ('TN', 'Tunisia'), 
    ('TR', 'Turkey'), 
    ('TM', 'Turkmenistan'), 
    ('TC', 'Turks and Caicos Islands'), 
    ('TV', 'Tuvalu'), 
    ('UG', 'Uganda'), 
    ('UA', 'Ukraine'), 
    ('AE', 'United Arab Emirates'), 
    ('GB', 'United Kingdom'), 
    ('US', 'United States of America'), 
    ('UM', 'United States Minor Outlying Islands'), 
    ('VI', 'United States Virgin Islands'), 
    ('UY', 'Uruguay, Eastern Republic of'), 
    ('UZ', 'Uzbekistan'), 
    ('VU', 'Vanuatu'), 
    ('VE', 'Venezuela'), 
    ('VN', 'Vietnam'), 
    ('WF', 'Wallis and Futuna'), 
    ('EH', 'Western Sahara'), 
    ('YE', 'Yemen'), 
    ('ZM', 'Zambia'), 
    ('ZW', 'Zimbabwe'); 
+22

Ở đây bạn lười biếng chump ... đã cho tôi 3 phút ... – Peon

+5

LOL: D +1 cho nỗ lực của bạn;) –

Các vấn đề liên quan