Terkadang kita membutuhkan sort ulang atau mengurutkan ulang sebuah array dalam PHP, hal ini berfungsi untuk mengurutkan ulang setiap baris didalam array, baik ascending maupun descending. Lalu bagaimana caranya?
Sebagai contoh kita lihat terlebih dulu array yang mislnya didapat dari sebuah Query SQL dan hasilnya seperti ini:
Array
(
[0] => Array
(
[title] => Mawar
[order] => 3
)
[1] => Array
(
[title] => Rose
[order] => 2
)
[2] => Array
(
[title] => Kenanga
[order] => 1
)
)
Dari array diatas dapat kita kita liat bahwa jumlah order terurut dari besar ke kecil yaitu dari 3-1, nah lalu bagaimana untuk mengurutkan ulang berdasarkan key order? Terlebih dahulu kita siapkan fungsi yang bisa anda masukan kedalam kelas yang anda buat atau dalam kumpulan fungsi bila anda menggunakan PHP Native.
function aasort(&$arr, $col, $dir) {
$sort_col = array();
foreach ($arr as $key => $row) {
$sort_col[$key] = $row[$col];
}
array_multisort($sort_col, $dir, $arr);
}
aasort($array,$kolom,$dir)
aasort($array,"order",SORT_ASC) //untuk shorting array menggunakan kolom/key order secara ascending
aasort($array,"order",SORT_DESC) //untuk shorting array menggunakan kolom/key order secara descending