0
我有下一个数组:PHP usort:按两个键与单一功能
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
)
)
我需要通过按键value_1
或value_2
阵列根据情况进行排序。
我这样做:
<?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;
}
?>
有可能在一个单一的功能来统一?事情是这样的:
function sortByOrder_1($a, $b, $i) {
if ($a['value_'.$i] < $b['value_'.$i])
return 1;
}
您可以张贴预期的结果? – RomanPerekhrest