PHP函数usort()解释

来源:互联网 发布:mysql error1064 编辑:程序博客网 时间:2024/05/17 03:37

定义和用法

  usort() 函数使用用户自定义的函数对数组排序。
  注释:如果两个元素比较结果相同,则它们在排序后的数组中的顺序未经定义。到 PHP 4.0.6 之前,用户自定义函数将保留这些元素的原有顺序。但是由于在 4.1.0 中引进了新的排序算法,结果将不是这样了,因为对此没有一个有效的解决方案。
  注释:本函数为 array 中的元素赋予新的键名。这会删除原有的键名。


语法

  usort(array,sorttype)参数描述array必需。规定要排序的数组。function必需。用户自定义的函数。 
函数必须设计为返回 -1, 0, 或 1,并应该接受两个供比较的参数,同时以类似下面这样的方式来工作: 
如果 a = b, 返回 0 
如果 a > b, 返回 1 
如果 a < b, 返回 -1


例子

  <?php function my_sort($a, $b) { if ($a == $b) return 0; 
return ($a > $b) ? -1 : 1; 
} $arr = array("Peter", "glenn","Cleveland","peter","cleveland", "Glenn"); 
usort($arr, "my_sort"); 
print_r ($arr); 
?>输出:
  Array ( [0] => peter [1] => glenn [2] => cleveland [3] => Peter [4] => Glenn [5] => Cleveland )