我想用下面的函數來一個國家的ISO代碼轉換爲它的名字:轉換國家代碼國家名稱
function convertcodes($in, $type){
$out = "";
$long = array('Afghanistan' , 'Åland Islands' , 'Albania' , 'Algeria' , 'American Samoa' , 'Andorra');
$short = array('af','ax','al','dz','as','ad');
$in = trim($in);
switch($type){
case 'long':
$out = str_replace($short, $long, $in);
break;
case 'short':
$out = str_replace($long, $short, $in);
break;
}
return $out;
}
的問題是,它返回所有的國家,而不是說我要找的人的因爲它的匹配字符串。我怎樣才能讓它匹配確切的字符串?使用preg_replace將不適用於數組。
(顯然,實際的陣列是更長的時間,我在這裏,爲了不使我貼的代碼太長剝離的一部分。)
相同指數的短對應同一指數的長度,對嗎? – DonCallisto
是的,那裏沒有問題。 – Sander
爲什麼不直接使用地圖? –