PHP uasort() 函数

定义和用法

uasort() 函数使用用户自定义的比较函数对数组排序,并保持索引关联(不为元素分配新的键)。

如果成功则返回 TRUE,否则返回 FALSE。

该函数主要用于对那些单元顺序很重要的结合数组进行排序。

语法

uasort(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;
  }

$people = array("Swanson" => "Joe", 
"Griffin" => "Peter", "Quagmire" => "Glenn",
"swanson" => "joe", "griffin" => "peter",
"quagmire" => "glenn"); 

uasort($people, "my_sort");

print_r ($people);
?>

输出:

Array
(
[griffin] => peter
[swanson] => joe
[quagmire] => glenn
[Griffin] => Peter
[Swanson] => Joe
[Quagmire] => Glenn
)