hehexu

博客园 首页 新随笔 联系 订阅 管理
<?php
function re($a,$b){
return ($a>$b)?1:-1;
}
$x=array(1,3,2,5,9);
usort($x, 're');
print_r($x);
die();

?>

Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 5 [4] => 9 )

<?php
function re($a,$b){
return ($a<$b)?1:-1;
}
$x=array(1,3,2,5,9);
usort($x, 're');
print_r($x);
die();

?>

Array ( [0] => 9 [1] => 5 [2] => 3 [3] => 2 [4] => 1 )


使用usort对多维数组进行排序

 <?php

function cmp($a, $b)

{

//strcmp是string compare 字符串比较的缩写,

//用来比较两个字符串大小

//$a,$b用来接收数组第一维,如 $a = $cities[0]

return strcmp($a["city"], $b["city"]);

}

 

//创建一个二维数组

$cities[0]["city"] = "shanghai";

$cities[1]["city"] = "beijing";

$cities[2]["city"] = "tianjin";

$cities[3]['city'] = 'chongqing';

 

usort($cities, "cmp");

print_r($cities); //输出二维数组$cities的值

?>

 

print_r的显示结果为

Array ( [0] => Array ( [city] => beijing ) [1] => Array ( [city] => chongqing ) [2] => Array ( [city] => shanghai ) [3] => Array ( [city] => tianjin ) ) 

 

,可知4个城市名称已经按字母的升序进行了排序, 即 

$cities[0]['city'] => beijing

$cities[1]['city'] => chongqing

$cities[2]['city'] => shanghai

$cities[3]['city'] => tianjin






posted on 2018-05-31 09:09  hehexu  阅读(242)  评论(0编辑  收藏  举报