如何依內部數組值對多維 PHP 數組進行排序?

DDD
發布: 2024-11-03 02:01:29
原創
558 人瀏覽過

How to Sort a Multi-Dimensional PHP Array by Inner Array Values?

以內部數組值對多維PHP 數組進行排序

在PHP 中對多維數組進行排序是資料處理中的常見任務,可以當排序條件位於嵌套數組內時,這將具有挑戰性。在本文中,我們將探討如何根據內部數組中的特定值(特別是「name」鍵)對 PHP 陣列進行排序。

為了解決這個挑戰,我們將引入一個名為 array_sort 的自訂排序函數。此函數接受一個輸入數組、排序依據的鍵和一個可選的排序順序(升序或降序)。

array_sort 函數最初會建立用於排序的新陣列和排序結果。它迭代輸入數組,將指定的鍵值對提取到排序數組中。然後,它將適當的排序演算法(asort 升序或 arsort 降序)應用於排序數組。

最後,函數透過將原始陣列值指派給新排序的鍵來重建排序的陣列。結果數組將根據指定的內部數組鍵進行排序。

用法:

要使用array_sort 函數,您可以按照以下步驟操作:

  1. 使用輸入數組、排序的鍵和所需的排序順序(可選)呼叫array_sort 函數。
  2. 將排序後的陣列儲存在新變數中。
  3. 現在可以透過新變數存取已排序的陣列。

範例:

考慮以下輸入陣列:

$list = [
    ['type' => 'suite', 'name' => 'A-Name'],
    ['type' => 'suite', 'name' => 'C-Name'],
    ['type' => 'suite', 'name' => 'B-Name'],
];
登入後複製

要依照字母順序對陣列進行排序,您可以使用:

$sortedList = array_sort($list, 'name', SORT_ASC);
登入後複製

產生的$sortedList 陣列將如下排序:

[
    ['type' => 'suite', 'name' => 'A-Name'],
    ['type' => 'suite', 'name' => 'B-Name'],
    ['type' => 'suite', 'name' => 'C-Name'],
]
登入後複製

以上是如何依內部數組值對多維 PHP 數組進行排序?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板