首頁 >後端開發 >php教程 >如何在 PHP 中先按數值排序關聯數組,然後再按鍵排序?

如何在 PHP 中先按數值排序關聯數組,然後再按鍵排序?

Susan Sarandon
Susan Sarandon原創
2024-11-10 03:35:021008瀏覽

How Can I Sort an Associative Array by Numeric Values and Then by Keys in PHP?

先按數值排序關聯數組,然後再按鍵排序

在PHP 中,您可能會遇到需要根據數值對平面關聯數組進行排序的情況然後透過按鍵。這可能是一項具有挑戰性的任務,特別是如果您不熟悉適當的技術。

一種方法是使用 usort() 同時比較值和鍵。然而,這可能是個乏味且複雜的解決方案。

一個更簡單、更有效的解決方案是將 array_values() 和 array_keys() 函數與 array_multisort() 結合使用。這種技術可讓您在一行程式碼中實現所需的排序:

array_multisort(array_values($arrTags), SORT_DESC, array_keys($arrTags), SORT_ASC, $arrTags);

此程式碼將數值和鍵隔離到單獨的陣列中,分別對它們進行降序和升序排序,然後合併結果返回到原$arrTags 數組。

產生的 $arrTags 將按數值降序排序,然後按鍵升序排序,提供所需的格式:

orange (4)  
banana (3) 
apple (2) 
mango (2)

以上是如何在 PHP 中先按數值排序關聯數組,然後再按鍵排序?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn