2011-09-29 44 views
0

任何人都可以幫助我如何獲得數字的排序;PHP陣列排序不能得到正確的輸出

num1 = 1 
num2 = 1 
num3 = 3 
num4 = 5 


$values = array($_POST["num1"] => 1, $_POST["num2"] => 2,$_POST["num3"] => 3,$_POST["num4"] =>4); 
    asort($values); 
    foreach($values as $key => $val){ 
    echo "<br>$key = $val<br>"; 
    } 

不打印NUM1 .. ,並收到了放

1 = 2

3 = 3

4 = 4

我怎樣纔能有這樣的輸出完成?

1 = 1 | 1 = 2 | 3 = 3 | 4 = 4

+1

你不能將數組分配鍵不止一次! – rabudde

+0

awte T_T我該如何解決? – SpitFirez

回答

0

你有key =>值在你的數組中錯誤地配對,因此你的密鑰爲1被覆蓋。

嘗試更換您的$值= ...這一行:

$values = array(1 => $_POST["num1"], 2 => $_POST["num2"], 3 => $_POST["num3"], 4 => $_POST["num4"]); 
+0

如果$ val值也被輸入並且有重複的值,那麼有什麼方法可以獲得我想要的輸出? – SpitFirez

+0

您是否嘗試過上面張貼的新排列的數組?什麼都不應該被覆蓋,因爲=>左邊的數字都不是相同的...... –