您好我有以下功能:
foreach($array_1 as &$arr){
usort($arr,"cmp");
}
function cmp($a, $b) {
if ($a[2] == $b[2]) {
return 0;
}
return ($a[2] < $b[2]) ? -1 : 1;
}
如果我这样做,它可以工作,但如果我放置一个变量而不是 2 == 2 和一个数字,则该函数不起作用。为什么会这样,我该如何解决?我希望能够更改数字以根据变量输入对数组进行排序。
不起作用的代码是:
$type = 2;
foreach($array_1 as &$arr){
usort($arr,"cmp");
}
function cmp($a, $b) {
if ($a[$type] == $b[$type]) {
return 0;
}
return ($a[$type] < $b[$type]) ? -1 : 1;
}