2010-08-25 162 views
0

我想對包含數值的數組進行排序,這些數值的範圍基本相同。我想要得到的結果是從我從MySQL服務器中檢索的數組中的這些數字的降序。到目前爲止,我已經創造了這個測試出來的「排序」功能:PHP - 對數組進行排序

<?php 

$numbers = array("100", "50", "70", "1000"); 
sort($numbers); 
echo var_dump($numbers); 

?> 

而結果我得到的是這樣的:

array(4) { [0]=> string(2) "50" [1]=> string(2) "70" [2]=> string(3) "100" [3]=> string(4) "1000" } 

我可以看到數字從最小到最大上市,但我希望它從最大的整數列表到最小的整數。另外我不明白爲什麼它的文本不是整數。如果有人能幫我解決這個問題,我將不勝感激。

感謝,

凱文

+0

因爲這些值都是字符串,並且你想他們排序爲數值,記得使用SORT_NUMERIC標誌與排序()或rsort() – 2010-08-25 14:46:35

回答

1

rsort()反向排序陣列:)

+0

好吧,但怎麼做我擺脫了其他文字,只包括數字? – lab12 2010-08-25 14:20:28

+0

@Kevin - 你是什麼意思的「其他文字」?你的意思是由var_dump生成的附加文本列出數據類型,鍵值等? – 2010-08-25 14:47:51

+0

它不是「其他文本」嘗試$ array [0] ...它應該只是返回數字。那只是字符串類型的定義。 – 2010-08-25 14:55:42

1

讓我告訴你可以自己找到答案。

  1. 導航到你目前正在使用該函數的手冊頁:http://php.net/sort
    需特別注意容易地址 - 只需八個字符和一個函數名。非常便利。

  2. 向下滾動到See also部分。

  3. 選擇適當的功能。

  4. 完成!

看,這並不難。並且不需要接受任何答案,因爲你自己回答了問題。

至於文字,沒有任何。只是嘗試使用這個數組的有用的東西,看