当我在" num"中添加相同的数字单位时。例如(0-9)。它正在排序我的数组。但是,如果任何" num" value包含不同的数字单位,排序失败。例如(4,7,2,1)这将起作用。 (7,12,76,2)这将失败。
$stack = array(array("Price" => $op,"num" => $noi),
array("Price" => $op1,"num" => $noi1),
array("Price" => $op2,"num" => $noi2),
array("Price" => $op3,"num" => $noi3));
function cmp($a, $b)
{
return strcmp($a["num"], $b["num"]);
}
usort($stack, "cmp");
答案 0 :(得分:1)
尝试使用此比较数字
function cmp($a, $b) {
if ($a['num'] == $b['num']) {
return 0;
}
return ($a['num'] < $b['num']) ? -1 : 1;
}
它直接取自usort上的PHP手册,并针对您的阵列进行了修改。