mensorting array, terutama untuk array multi demensi. Dari forum id-php
pernah di bahas mengenai hal ini, saya melihat coding yang diberikan
sangat kompleks. Dalam pikiran saya apakah mungkin PHP memiliki fungsi
yang built-in ?
Setelah mengutak atik manual php, awalnya saya membuka fungsi asort().
Kemudian saya temukan fungsi array_multisort(). Menarik jadinya.
<?php
// Multi-Demensi Array assoc Items
$items = array
(
'januari' => array( 'qty' => 100, 'rp' => 10000),
'februari' => array( 'qty' => 120, 'rp' => 12000),
'maret' => array( 'qty' => 32, 'rp' => 3200),
'april' => array( 'qty' => 210, 'rp' => 22000),
'mei' => array( 'qty' => 150, 'rp' => 25000),
'juni' => array( 'qty' => 15, 'rp' => 15000),
);
echo '<pre>';
print_r($items);
function qty_sort($a) {
return $a['qty'];
}
function rp_sort($a) {
return $a['rp'];
}
// Mensortir berdasarkan Qty DESC
$array_sort = array_map('qty_sort', $items);
array_multisort($array_sort,SORT_DESC,$items);
print_r($items);
// Mensortir berdasarkan Rp DESC
$array_sort = array_map('rp_sort', $items);
array_multisort($array_sort,SORT_DESC,$items);
print_r($items);
echo '</pre>';
?>
