示例:
<?php
function cmp($a, $b)
{
if ($a == $b) {
return 0;
}
return ($a < $b) ? -1 : 1;
}
$a = array(3, 2, 5, 6, 1);
usort($a, "cmp");
foreach ($a as $key => $value) {
echo "$key: $value\n";
}
?>
结果
0: 1
1: 2
2: 3
3: 5
4: 6
在用户定义的比较函数“cmd
”中,它有两个参数$a
&amp; $b
。
第一个和第二个参数代表什么?他们是array[x]
还是array[x+1]
?
答案 0 :(得分:3)
它们只是被排序的数组中的两个元素,不一定是邻居。 usort
执行某种排序算法(请参阅http://en.wikipedia.org/wiki/Sort_algorithm#Comparison_of_algorithms),其中包括比较各种元素对以确定其顺序。它使用你的回调函数来确定这一点。