首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 綜合知識

PHP 陣列排序函數完整對照:sort、asort、rsort、ksort、krsort 差異解析

     編輯:PHP 綜合知識

六大排序函數對照表

函數排序依據順序保留鍵名適用場景
sort()值低→高否(重建索引)索引陣列單純排序
rsort()值高→低否索引陣列反向排序
asort()值低→高是關聯陣列按值排序
arsort()值高→低是關聯陣列按值反向
ksort()鍵名低→高是關聯陣列按鍵排序
krsort()鍵名高→低是關聯陣列按鍵反向

詳細範例

sort() - 重建索引

$arr = ["b", "a", "c"];
sort($arr);
// 結果: [0=>"a", 1=>"b", 2=>"c"]

asort() - 保留關聯

$arr = ["b", "a", "c"];
asort($arr);
// 結果: [1=>"a", 0=>"b", 2=>"c"]

ksort() - 按鍵名排序

$arr = ["b"=>18, "a"=>20, "c"=>25];
ksort($arr);
// 結果: ["a"=>20, "b"=>18, "c"=>25]

排序旗標

所有函數支援第二參數 sort_flags:

  • SORT_REGULAR - 一般比較
  • SORT_NUMERIC - 數值比較
  • SORT_STRING - 字串比較
  • SORT_LOCALE_STRING - 依當前地區設定比較

選擇指南

  • 需保留鍵值對應 → asort/arsort/ksort/krsort
  • 單純索引陣列 → sort/rsort
  • 按值排 → asort 系列;按鍵排 → ksort 系列
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved