程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> 探討如何實現PHP數組排序

探討如何實現PHP數組排序

編輯:關於PHP編程

在在了解了usort自定義排序後,我們再來看看sort(),這個函數可謂是數組裡的排序函數的鼻祖,大家肯定發現所有的PHP數組排序函數都會帶有sort作為後綴。函數原型:bool sort ( array &array [, int sort_flags] )說明:基本上每個函數都會有個可選的參數,sort也不例外。這個可選參數指明的一種習慣。

可選類型有如下幾種:
◆SORT_REGULAR – 正常比較單元(不改變類型) //按照ASCII值排序(B大於a)
◆SORT_NUMERIC – 單元被作為數字來比較 //對整數和浮點數常用這種參數
◆SORT_STRING – 單元被作為字符串來比較
◆SORT_LOCALE_STRING – 根據當前的區域(locale)設置來把單元當作字符串比較

還是看個例子,來自幫助手冊:

  1. php
  2. $fruits = array("lemon", "orange", "banana", "apple");
  3. sort($fruits);
  4. foreach ($fruits as $key => $val) {
  5. echo "fruits[".$key."] = " . $val . "n";
  6. }
  7. ?>

這個PHP數組排序的結果如下:

  1. fruits[0] = apple
  2. fruits[1] = banana
  3. fruits[2] = lemon
  4. fruits[3] = orange

大家可以發現,原來是索引為0的lemon,再排序後就變成了apple。為了保持原來的鍵/值不變,你可以把sort()換成asort()即可。另外這兩個函數是對鍵進行升序的排列(a在b的前面)。如果要使其進行降序,只要使用rsort()代替即可,相對應的arsort()是保持原來的鍵/值的相關聯性的。

下面簡要介紹下ksort()函數

這個函數主要是用來對關聯數組進行而存在,它的“姐妹”函數uksort()是使用自定義函數而進行比較的。一句話:ksort()對於關聯級數,對鍵進行排序並保留鍵名到數據的關聯。數組的自然排序,到目前為止我們所知道的排序函數要麼是用默認的方式,要麼按照自定義的方式進行排序。那麼natsort()則使用一種人性化的排序方式來對數組進行排序。在此就不說了,實例可以查看手冊,如果你手頭上沒有PHP幫助手冊,你可以在浏覽本站在線幫助手冊進行查看

  1. shuffle()//函數的使用
  2. Shuffle()//用來對一個數組進行隨機排序,這個有點像抽簽,其他的就不多說了。到用的時候再看吧。
  3. array_rand()//函數的使用
  4. array_rand()//函數和shuffle()差不多,也是隨機返回數組中的元素,如下調用:
  5. array_rand ( array [, int num_req] ) //可選參數指出你要返回的個數。

PHP數組排序的方式就介紹到這,希望對大家有所幫助。


  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved