」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > 如何根據自定義訂單對PHP數組進行分類?

如何根據自定義訂單對PHP數組進行分類?

發佈於2025-03-24
瀏覽:882

How to Sort a PHP Array Based on a Custom Order?
在PHP

在PHP中的排序數組通常是通過基於比較的算法來完成的。但是,在某些情況下,您需要根據預定義的自定義訂單對數組進行排序。

考慮一個數組數組,其中每個子陣列包含兩個鍵:“ id”和“ title”。您想按特定順序對主數組進行排序,例如: [3452342,5867867,7867867,1231233]

來實現此目的,您可以利用USORT()函數。此功能允許您指定一個比較函數,該功能定義瞭如何比較數組元素。

在這種情況下,比較函數使用閉合來比較自定義訂單陣列中的“ ID”值的位置($訂單陣列($&&&&&&&&&&&&&&&&&&&& areort)usort(usort($ array,$ a,$ a,$ a,$ a,$ a,$ a,$ a,$ a,$ a,$ a,$ a,$ a,$ a,$ b) $ pos_a = array_search($ a ['id'],$ order); $ pos_b = array_search($ b ['id'],$ order); 返回$ pos_a -$ pos_b; });

比較函數將$順序數組中的“ id”值分配給$ pos_a和$ pos_b。然後,它減去這些位置以確定訂單(如果$ pos_a小於$ pos_b,則在$ b之前出現。
最新教學 更多>

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3