I am new to PHP. I have a PHP array that is two dimensional. The "inner" array has a value that I want to sort on.
For example:
$myarray[1]['mycount']=12
$myarray[2]['mycount']=13
$myarray[3]['mycount']=9
I want to sort the "inner" array in descending order.
So the results for the following will be 13, 12, 9
foreach ($myarray as $myarr){
print $myarr['mycount']
}
thanks in advance.
You can use usort();
to sort by a user-defined comparison.
// Our own custom comparison function
function fixem($a, $b){
if ($a["mycount"] == $b["mycount"]) { return 0; }
return ($a["mycount"] < $b["mycount"]) ? -1 : 1;
}
// Our Data
$myarray[0]['mycount']=12
$myarray[1]['mycount']=13
$myarray[2]['mycount']=9
// Our Call to Sort the Data
usort($myArray, "fixem");
// Show new order
print "<pre>";
print_r($myArray);
print "</pre>";
Check array_multisort
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With