我是 PHP 新手。我有一个二维的 PHP 数组。 “内部”数组有一个我想要排序的值。

例如:

$myarray[1]['mycount']=12
$myarray[2]['mycount']=13
$myarray[3]['mycount']=9

我想按降序对“内部”数组进行排序。

所以下面的结果将是 13, 12, 9
foreach ($myarray as $myarr){
  print $myarr['mycount']
}

提前致谢。

最佳答案

您可以使用 usort(); 按用户定义的比较进行排序。

// Our own custom comparison function
function fixem($a, $b){
  if ($a["mycount"] == $b["mycount"]) { return 0; }
  return ($a["mycount"] < $b["mycount"]) ? -1 : 1;
}

// Our Data
$myarray[0]['mycount']=12
$myarray[1]['mycount']=13
$myarray[2]['mycount']=9

// Our Call to Sort the Data
usort($myArray, "fixem");

// Show new order
print "<pre>";
print_r($myArray);
print "</pre>";

关于php - 对二维数组进行排序,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1970207/

10-12 16:39