PHP 中的陣列排序


什麼是排序?

排序是指按照特定順序(通常基於預定義的標準)排列專案或資料元素集合的過程。它是計算機科學中的一項基本操作,廣泛應用於各種演算法和應用程式。

排序的目的是為資料集帶來組織和結構,以便能夠輕鬆地搜尋、訪問或以有意義的方式呈現資料。透過按特定順序排列資料,排序允許進行高效的搜尋、比較和檢索操作。

排序可以應用於各種型別的資料,例如數字、字串、記錄或物件。元素排序的順序可以是升序(從小到大)或降序(從大到小),具體取決於問題或應用程式的要求。

PHP 中的陣列排序

在 PHP 中,有多個內建函式和方法可用於排序陣列。讓我們詳細探討它們。

按升序排序陣列 - sort()

sort() 函式根據值按升序對陣列進行排序。它重新排列陣列的元素並修改原始陣列。

示例 1

以下示例按升序數字順序對 $numbers 陣列的元素進行排序。

<?php
$numbers = array(4, 2, 1,5, 3);
sort($numbers);
print_r($numbers); 
?>

輸出

Array
(
    [0] => 1
    [1] => 2
    [2] => 3
    [3] => 4
    [4] => 5
)

示例 2

以下示例按升序字母順序對 $fruits 陣列的元素進行排序。

<?php
$fruits = array("banana", "apple", "cherry", "date");
sort($fruits);
print_r($fruits); 
?>

輸出

Array
(
    [0] => apple
    [1] => banana
    [2] => cherry
    [3] => date
)

按降序排序陣列 - rsort()

rsort() 函式與 sort() 類似,但它按降序對陣列進行排序。

示例 1

<?php
$numbers = array(4, 2, 1,5, 3);
rsort($numbers);
print_r($numbers); 
?>

輸出

Array
(
    [0] => 5
    [1] => 4
    [2] => 3
    [3] => 2
    [4] => 1
)

示例 2

<?php
$fruits = array("banana", "apple", "cherry");
arsort($fruits);
print_r($fruits); 
?>

輸出

Array
(
    [2] => cherry
    [0] => banana
    [1] => apple
)

根據值按升序排序陣列 - asort()

asort() 函式根據值按升序對陣列進行排序,同時保持鍵和值之間的關聯。

示例 1

<?php
$fruits = array("apple" => 3, "banana" => 2, "cherry" => 1);
asort($fruits);
print_r($fruits);
?>

輸出

Array
(
    [cherry] => 1
    [banana] => 2
    [apple] => 3
)

根據鍵按升序排序陣列 - ksort()

ksort() 函式根據鍵按升序對陣列進行排序,同時保持鍵和值之間的關聯。

示例 1

<?php
$age = array("Peter"=>"60", "Ben"=>"45", "Joe"=>"36");
ksort($age);
print_r($age);
?>

輸出

Array
(
    [Ben] => 45
    [Joe] => 36
    [Peter] => 60
)

根據值按降序排序陣列 - arsort()

arsort() 函式與 asort() 類似,但它按降序對陣列進行排序,同時保持鍵和值之間的關聯。

示例

<?php
$age = array("Peter"=>"60", "Ben"=>"36", "Joe"=>"45");
arsort($age);
print_r($age);
?>

輸出

Array
(
    [Peter] => 60
    [Joe] => 45
    [Ben] => 36
)

根據鍵按降序排序陣列 - krsort()

krsort() 函式與 ksort() 類似,但它根據鍵按降序對陣列進行排序,同時保持鍵和值之間的關聯。

示例

<?php
$fruits = array("banana" => 2, "apple" => 3, "cherry" => 1);
krsort($fruits);
print_r($fruits);  // Output: Array ( [cherry] => 1 [banana] => 2 [apple] => 3 )
?>

輸出

Array
(
    [cherry] => 1
    [banana] => 2
    [apple] => 3
)

結論

總之,排序是指按照特定順序排列專案或資料元素集合的過程。在 PHP 中,您可以使用各種內建函式(如 sort()、rsort()、asort()、arsort()、ksort() 和 krsort())對陣列進行排序。這些函式允許您根據值或鍵按升序或降序對陣列進行排序。此外,usort() 函式允許根據使用者定義的比較函式進行自定義排序。在 PHP 中對陣列進行排序對於組織和操作資料至關重要,使搜尋、訪問和以有意義的方式呈現資訊變得更容易。

更新於: 2023年8月2日

2K+ 閱讀量

開啟您的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.