PHP关于二维数组排序的问题!求大神帮忙

2025-02-25 12:22:24
推荐回答(1个)
回答1:

我用的是冒泡算法,代码如下:

$arr = array (
array(
'id'=>1,
'num'=>3,
'time' => 1522131034
),
array(
'id'=>2,
'num'=>7,
'time' => 1522132034
),
array(
'id'=>3,
'num'=>7,
'time' => 1522133034
),
array(
'id'=>4,
'num'=>7,
'time' => 1522134034
),
array(
'id'=>5,
'num'=>10,
'time' => 1522135034
),
array(
'id'=>6,
'num'=>0,
'time' => 1522136034
)
);
$t=count($arr);
$tmp=array();
for($i=0;$i<$t;$i++)
{
for($j=$i+1;$j<$t;$j++)
{
 if($arr[$i]['num']>$arr[$j]['num'])
 {
 $tmp=$arr[$i];
 $arr[$i]=$arr[$j];
 $arr[$j]=$tmp;
 }else if($arr[$i]['num']==$arr[$j]['num'])
 {
 if($arr[$i]['time']>$arr[$j]['time'])
 {
  $tmp=$arr[$i];
      $arr[$i]=$arr[$j];
      $arr[$j]=$tmp;
 }
 }
}
}
print_r($arr);
?>