PHP uksort() 函数
定义和用法
uksort() 函数使用用户自定义的比较函数按照键名对数组排序,并保持索引关系。
如果成功则返回 TRUE,否则返回 FALSE。
如果要排序的数组需要用一种不寻常的标准进行排序,那么应该使用此函数。
自定义函数应接受两个参数,该参数将被数组中的一对键名填充。比较函数在第一个参数小于,等于,或大于第二个参数时必须分别返回一个小于零,等于零,或大于零的整数。
语法
uksort(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");
uksort($people, "my_sort");
print_r ($people);
?>
输出:
Array
(
[swanson] => joe
[quagmire] => glenn
[griffin] => peter
[Swanson] => Joe
[Quagmire] => Glenn
[Griffin] => Peter
)