所以我有被動,Q,Q2,W,W2,E,E2,R,R2的陣列,我希望按照我寫入的順序排列使用usort自定義排序php陣列
$SpellTitle = array("Passive", "W", "Q", "Q2", "W2", "R", "E", "E2", "R2");
我已閱讀關於使用usort(),但我真的不明白如何使用它。
更新!
$ SpellTitle是一個從數據庫加載的動態數組,因此長度將有所不同,它將隨機設置在該數組中。
所以我有被動,Q,Q2,W,W2,E,E2,R,R2的陣列,我希望按照我寫入的順序排列使用usort自定義排序php陣列
$SpellTitle = array("Passive", "W", "Q", "Q2", "W2", "R", "E", "E2", "R2");
我已閱讀關於使用usort(),但我真的不明白如何使用它。
更新!
$ SpellTitle是一個從數據庫加載的動態數組,因此長度將有所不同,它將隨機設置在該數組中。
usort
將用戶定義的函數作爲第二個參數。該函數必須返回小於零,零或大於零的整數值。這個函數需要兩個參數 - 數組值要相互比較。如果第一個值比第二個值「低」,則函數返回一個小於零的值,否則大於零。如果值相等,則函數必須返回零。
所以,如果你想使該sotrs整數自定義函數或浮動值,你可以使用:
function cmp($a, $b) {
if((float) $a == (float) $b) {
return 0;
} else {
return ((float) $a < (float) $b) ? -1 : 1;
}
}
ASORT - 對數組進行排序並保持索引協會。
實施例:
$SpellTitle = array("Passive", "W", "Q", "Q2", "W2", "R", "E", "E2", "R2");
asort($SpellTitle);
print_r($SpellTitle);
輸出:
Array
(
[6] => E
[7] => E2
[0] => Passive
[2] => Q
[3] => Q2
[5] => R
[8] => R2
[1] => W
[4] => W2
)
注意,陣列索引順序保持太。
希望得到這個幫助。
請詳細說明你有什麼和你想用usort實現什麼() –
@Being Sunny我希望數組按照這個順序排序被動,Q,Q2,W,W2,E,E2,R,R2 – Higeath
@Higeath 1)你有一個數組中的元素的順序嗎? 2)請在問題 – Rizier123