PHP usort()
函数 表示使用用户自定义函数(回调函数)对数组进行排序。
它会更改原数组内的结构,如果是关联数组会删除所对应的键名。
语法
usort(array,myfunction);
参数
参数 | 说明 | 可选/必须 |
---|---|---|
array | 指定要排序的数组 | 必须 |
myfunction | 自定义函数。该函数必须返回-1,0或1。
| 可选 |
返回值
返回值为ture 或者false。
例子
介绍一些例子,了解PHP usort()函数 的使用方法。例1
一维数组的例子<?php
function myfunc($a,$b){
if ($a==$b) return 0;
return ($a<$b)?-1:1;
}
$arr = array(3,1,5);
$result = usort($arr,'myfunc');
var_dump($arr);
?>
array(3) {
[0]=>
int(1)
[1]=>
int(3)
[2]=>
int(5)
}
[0]=>
int(1)
[1]=>
int(3)
[2]=>
int(5)
}
例2
关联数组的例子,它会删除键名,只比较键值。
<?php
function myfunc($a,$b){
if ($a==$b) return 0;
return ($a<$b)?-1:1;
}
$arr = array("c"=>"yellow","b"=>"green","a"=>"red");
$result = usort($arr,'myfunc');
var_dump($arr);
?>
输出如下:array(3) {
[0]=>
string(5) "green"
[1]=>
string(3) "red"
[2]=>
string(6) "yellow"
}
[0]=>
string(5) "green"
[1]=>
string(3) "red"
[2]=>
string(6) "yellow"
}