[php] Code pays vers le nom pays

Résolu/Fermé
coccoweb Messages postés 141 Date d'inscription dimanche 20 décembre 2009 Statut Membre Dernière intervention 17 février 2015 - 18 mars 2011 à 01:42
coccoweb Messages postés 141 Date d'inscription dimanche 20 décembre 2009 Statut Membre Dernière intervention 17 février 2015 - 20 mars 2011 à 00:57
Bonjour,

Je viens juste de terminer une fonction relativement simple, mais qui n'à pas l'effet désirez...
Je voudrai partir d'un code pays comme fr ou be, mais lorsque j'envois ma requête j'obtiens pour be BelGibraLitUkraineNicaragUkraineearque... Spécial hein ?

Une idée pour obtenir Belgique ?
function code2pays($code){
// Code a 2 lettre
$patterns = array(
'/af/','/za/','/al/','/dz/','/de/','/as/','/ad/','/ao/','/ai/','/aq/','/ag/','/an/','/sa/','/ar/','/am/','/aw/','/ac/','/au/','/at/','/az/','/bs/','/bh/','/bd/','/bb/','/be/','/bm/','/bt/','/by/','/bo/','/ba/','/bw/','/bv/','/bn/','/br/','/bg/','/bf/','/bi/','/bz/','/bj/','/kh/','/cm/','/ca/','/cv/','/ky/','/cl/','/cn/','/cx/','/cy/','/cc/','/co/','/km/','/ck/','/kp/','/kr/','/cr/','/hr/','/cu/','/ci/','/dk/','/dj/','/dm/','/eg/','/ae/','/ec/','/er/','/es/','/ee/','/us/','/et/','/su/','/fk/','/fo/','/fj/','/fi/','/fr/','/ga/','/gm/','/gh/','/gi/','/gb/','/gd/','/gl/','/gr/','/gp/','/gu/','/gt/','/gg/','/gn/','/gq/','/gw/','/gy/','/gf/','/ge/','/gs/','/ht/','/hm/','/hn/','/hk/','/hu/','/im/','/in/','/id/','/ir/','/iq/','/ie/','/is/','/il/','/it/','/jm/','/jp/','/je/','/jo/','/kz/','/ke/','/kg/','/ki/','/kw/','/la/','/ls/','/lv/','/lb/','/lr/','/ly/','/li/','/lt/','/lu/','/mo/','/mk/','/mg/','/my/','/mw/','/mv/','/ml/','/mt/','/mp/','/ma/','/mh/','/mq/','/mu/','/mr/','/yt/','/mx/','/fm/','/md/','/mc/','/mn/','/ms/','/mz/','/mm/','/na/','/nr/','/ni/','/ne/','/ng/','/nu/','/nf/','/no/','/nc/','/nz/','/np/','/om/','/ug/','/uz/','/pk/','/pw/','/pa/','/pg/','/py/','/nl/','/ph/','/pn/','/pl/','/pf/','/pr/','/pt/','/pe/','/qa/','/ro/','/uk/','/ru/','/rw/','/cf/','/do/','/zr/','/cd/','/re/','/eh/','/kn/','/sm/','/lc/','/sb/','/sv/','/st/','/sw/','/cs/','/sc/','/sl/','/sg/','/sk/','/si/','/so/','/sd/','/lk/','/vc/','/sh/','/pm/','/ch/','/sr/','/se/','/sj/','/sz/','/sy/','/sn/','/tj/','/tw/','/tz/','/td/','/cz/','/io/','/tf/','/th/','/tp/','/tg/','/tk/','/to/','/tt/','/tn/','/tm/','/tc/','/tr/','/tv/','/um/','/ua/','/uy/','/vu/','/va/','/ve/','/vg/','/vi/','/vn/','/wf/','/ws/','/ye/','/yu/','/zm/','/zw/'
);
// Pays
$replacements = array(
'Afghanistan','Afrique du Sud','Albanie','Algérie','Allemagne','American Samoa','Andorre','Angola','Anguilla','Antarctique','Antigua et Barbuda','Antilles Neerlandaises','Arabie Saoudite','Argentine','Arménie','Aruba','Ascension (île)','Australie','Autriche','Azerbaidjan','Bahamas','Bahrein','Bangladesh','Barbade','Belgique','Bermudes','Bhoutan','Biélorussie','Bolivie','Bosnie Herzégovine','Botswana','Bouvet (île)','Brunei','Brésil','Bulgarie','Burkina Faso','Burundi','Bélize','Bénin','Cambodge','Cameroun','Canada','Cap Vert','Caïmanes (îles)','Chili','Chine','Christmas (île)','Chypre','Cocos (Keeling) îles','Colombie','Comores','Cook (îles)','Corée du nord','Corée du sud','Costa Rica','Croatie','Cuba','Côte d\'Ivoire','Danemark','Djibouti','Dominique','Egypte','Emirats Arabes Unis','Equateur','Erythrée','Espagne','Estonie','Etats-Unis','Ethiopie','Ex U.R.S.S.','Falkland (Malouines) îles','Faroe (îles)','Fidji','Finlande','France','Gabon','Gambie','Ghana','Gibraltar','Grande Bretagne','Grenade','Groenland','Grèce','Guadeloupe','Guam','Guatemala','Guernsey','Guinée','Guinée Equatoriale','Guinée-Bissau','Guyana','Guyane Française','Géorgie','Géorgie du sud','Haiti','Heard et McDonald (îles)','Honduras','Hong Kong','Hongrie','Ile de Man','Inde','Indonésie','Iran','Iraq','Irlande','Islande','Israël','Italie','Jamaïque','Japon','Jersey','Jordanie','Kazakhstan','Kenya','Kirghizistan','Kiribati','Koweït','Laos','Lesotho','Lettonie','Liban','Liberia','Libye','Liechtenstein','Lituanie','Luxembourg','Macao','Macédoine','Madagascar','Malaisie','Malawi','Maldives','Mali','Malte','Mariannes du nord (îles)','Maroc','Marshall (îles)','Martinique','Maurice (île)','Mauritanie','Mayotte','Mexique','Micronésie','Moldavie','Monaco','Mongolie','Montserrat','Mozambique','Myanmar','Namibie','Nauru','Nicaragua','Niger','Nigéria','Niue','Norfolk (île)','Norvège','Nouvelle Calédonie','Nouvelle Zélande','Népal','Oman','Ouganda','Ouzbékistan','Pakistan','Palau','Panama','Papouasie Nvelle Guinée','Paraguay','Pays Bas','Philippines','Pitcairn (île)','Pologne','Polynésie Française','Porto Rico','Portugal','Pérou','Qatar','Roumanie','Royaume Uni','Russie','Rwanda','Rép Centrafricaine','Rép Dominicaine','Rép. Dém. du Congo (ex Zaïre)','Rép. du Congo','Réunion (île de la)','Sahara Occidental','Saint Kitts et Nevis','Saint-Marin','Sainte Lucie','Salomon (îles)','Salvador','Sao Tome et Principe','Serbie','Serbie Montenegro','Seychelles','Sierra Leone','Singapour','Slovaquie','Slovénie','Somalie','Soudan','Sri Lanka','St Vincent et les Grenadines','St. Hélène','St. Pierre et Miquelon','Suisse','Suriname','Suède','Svalbard/Jan Mayen (îles)','Swaziland','Syrie','Sénégal','Tadjikistan','Taiwan','Tanzanie','Tchad','Tchéquie','Ter. Brit. Océan Indien','Territoires Fr du sud','Thailande','Timor Oriental','Togo','Tokelau','Tonga','Trinité et Tobago','Tunisie','Turkménistan','Turks et Caïques (îles)','Turquie','Tuvalu','US Minor Outlying (îles)','Ukraine','Uruguay','Vanuatu','Vatican','Venezuela','Vierges Brit. (îles)','Vierges USA (îles)','Viêt Nam','Wallis et Futuna (îles)','Western Samoa','Yemen','Yugoslavie','Zambie','Zimbabwe');
return preg_replace($patterns, $replacements, $code);
}


A voir également:

2 réponses

Zep3k!GnO Messages postés 2025 Date d'inscription jeudi 22 septembre 2005 Statut Membre Dernière intervention 18 novembre 2015 200
18 mars 2011 à 16:14
Je suis pas sur d'avoir bien compris le but de ta fonction car, ci-dessous semblerait plus simple et moins gourmand...
function code2pays($code){
$sReturn = '';
$aPaysCode = Array( 'fr' => 'France', 
                                'us' => 'etats-unis'
);

if(isset($aPaysCode[$code])){
 $sReturn = $aPaysCode[$code];
}
return $sReturn;
}
0
coccoweb Messages postés 141 Date d'inscription dimanche 20 décembre 2009 Statut Membre Dernière intervention 17 février 2015 27
20 mars 2011 à 00:57
Merci pour ton aide, j'ai fais comme ceci pour finir

function code2pays($code){
$flag=array('fr' => 'France', 'be' => belgique);
if (array_key_exists($code, $flag)){
return $flag[$code];
}
else
{
return false;
}

}
0