2012-01-04 26 views
0

我有一個數組:如何用數字替換數組然後按數字排序?

Array 
(
    [Asia] => Array 
     (
      [Edisi] => 187September2001 

    [Hongkong] => Array 
     (
      [Edisi] => 193Oktober2001 

    [1 India] => Array 
     (
      [Edisi] => 176September2001 

    [2 India] => Array 
     (
      [Edisi] => 177September2001 

     ) 
    ) 

如何與數字替代國名,然後我將與數爲排序,如:

"hongkong" => 1, 
"1 India" => 2, 
"2 India" => 3, 
"Asia" => 4, 
+0

任何原因有國家名稱的字符串內的數字? – 2012-01-04 01:02:18

+0

你想保持國家的秩序,因爲他們在初始數組?我似乎無法弄清楚爲什麼你有「亞洲」作爲結果數組中的最後一個鍵。 – F21 2012-01-04 01:11:31

回答

0

您可以使用$keys = array_keys($array)提取的鑰匙你的數組。

這應該給一個這樣的數組:

array(
    [0] => Hongkong 
    [1] => 1 India 
    [2] => 2 India 
) 

然後生成索引的數組:

$index = range(1, count($keys)); 

然後結合你的索引和鍵:

$result = array_combine($keys, $index); 

這應該導致:

array(
    [Hongkong] => 1 
    [1 India] => 2 
    [2 India] => 3 
) 
相關問題