I have the next array:
Array
(
[0] => Array
(
[name] => 'Paul'
[value_1] => 3
[value_2] => 2
)
[1] => Array
(
[name] => 'John'
[value_1] => 6
[value_2] => 5
)
[2] => Array
(
[name] => 'Steve'
[value_1] => 1
[value_2] => 9
)
[3] => Array
(
[name] => 'Joe'
[value_1] => 8
[value_2] => 1
)
)
I need to sort the array by key value_1
or value_2
depending on the situation.
I do this:
<?php
$i = 1;
usort($my_array, 'sortByOrder_'.$i);
$i = 2;
usort($my_array, 'sortByOrder_'.$i);
function sortByOrder_1($a, $b) {
if ($a['value_1'] < $b['value_1'])
return 1;
}
function sortByOrder_2($a, $b) {
if ($a['value_2'] < $b['value_2'])
return 1;
}
?>
It is possible to unify in a single function?. Something like this:
function sortByOrder_1($a, $b, $i) {
if ($a['value_'.$i] < $b['value_'.$i])
return 1;
}