示例:
<?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: $valuen";
}
?>
结果
0: 1
1: 2
2: 3
3: 5
4: 6
在用户定义的比较函数' cmd
'中,它有两个参数,$a
& $b
。
第一个和第二个论点代表什么?他们array[x]
和array[x+1]
吗?
它们只是被排序数组中的两个元素,不一定是邻居。 usort
执行某种排序算法(参见 http://en.wikipedia.org/wiki/Sort_algorithm#Comparison_of_algorithms),这涉及比较各种元素对以确定它们的顺序。 它使用您的回调函数来确定这一点。