2012-10-19 76 views
-3

我儲存的國家與他們的代碼在數組像下面輸出數據

$countries = array (
    'AF' => 'Afghanistan', 
    'AX' => 'Åland Islands', 
    'AL' => 'Albania', 
    'DZ' => 'Algeria' 
); 

想我得到了國家代碼「AF」或國名「阿富汗」從形式,怎麼辦我輸出數組中的代碼和名稱?

我想要得到的輸出是:阿富汗AF。我將在以後的代碼中使用它。

​​
+1

u必須的代碼已經... :) –

+6

回聲 'AF'。 $ countries ['AF'] – JvdBerg

回答

1

如果你知道代碼( 'AF'在這種情況下

$code = 'AF'; 
echo 'Country :', $countries[$code], " has code $code\n"; 

但是,如果你想得到另一種方式,即阿富汗獲得代碼AF,你必須遍歷列表或構造另一個數組。

+0

這與我想要的很接近:-) – Norman

0

我不知道你的問題,但如果你是問關於迭代陣列來輸出代碼和名稱,你只是分配循環中的關鍵:

foreach ($countries as $code => $name) { 
     echo "$code : $name"; 
} 

另一種解決方案如果您只知道您所提交表格中提交的國家/地區名稱,則將該數組翻轉。

$countries = array_flip($countries); // Flips the array so Code => Name is Name => Code 
$code = $countries[$_POST['country']]; // Where $_POST['country'] is the name 
0
與循環

也許

<?php 
    foreach($countries as $key=>$name) { 
     echo "<p>$key => $name</p>"; 
    } 
?> 
0

嘗試

foreach($countries as $key=>value) 
{ 
echo "Code: ".$key." Country: ".$value; 
} 
1

讓您滿意key($countries['AF'])給你這是AF本身:)關鍵

1

試試這個:)

var_dump(array_slice($countries, array_search('AX', array_keys($countries)), 1));