关于回调函数 usort() uksrot() sort() 介绍简介实验是从小到大排序
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于回调函数 usort() uksrot() sort() 介绍简介实验是从小到大排序相关的知识,希望对你有一定的参考价值。
/*
* usort($arr, "自定义回调函数") 对数组中的值进行比较
*/
$a=array(1,5,2,6,3); //用户自定义回调函数
function dd($a, $b){ //用户自定义回调函数
if($a == $b){
return 0; //如果两个参数相等,返回0
}
return ($a<$b)?-1:1; //如果第1个参数大于第2个返回1,否则-1
}
usort($a, "dd"); //使用自定义函数对数组键名,按照自定义的回调函数排序
foreach($a as $key=>$value){ //循环输出排序后的键值对
echo "$key:$value<br/>";
}
/*运行结果
0:1
1:2
2:3
3:5
4:6
*/
/*
* uksort($arr, "自定义回调函数") 对数组中的键名进行排序
*/
$a=array(4=>"four",3 =>"three",20 =>"twenty",10=>"ten"); //定义一个数组 //用户自定义回调函数
function cmp($a, $b){ //用户自定义回调函数
if($a == $b){
return 0; //如果两个参数相等,返回0
}
return ($a<$b)?-1:1; //如果第1个参数大于第2个返回1,否则-1
}
uksort($a, "cmp"); //使用自定义函数对数组键名,按照自定义的回调函数排序
foreach($a as $key=>$value){ //循环输出排序后的键值对
echo "$key:$value<br/>";
}
/*运行结果
3:three
4:four
10:ten
20:twenty
*/
/*
*sort($arr") 当本函数结束时数组单元将被从最低到最高重新安排。 【原有的键名将被删除】
*/
$arr= array("one"=>1,4,5,2,3,6);
sort($arr);
print_r($arr);
echo "<br/>";
/*
运行结果
Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 [5] => 6 )
*/
以上是关于关于回调函数 usort() uksrot() sort() 介绍简介实验是从小到大排序的主要内容,如果未能解决你的问题,请参考以下文章
我必须实现哪个 SPL 接口才能在对象上使用 usort() 函数?