我正试图根据多维数组中的特定键值对数组进行排序,如下所示
<?php
$country = array(
array(
'country' => 'India',
'visits' => 22,
'newVisits' => 16,
'newVisitsPercent' => 72.7),
array(
'country' => 'USA',
'visits' => 30,
'newVisits' => 15,
'newVisitsPercent' => 50),
array(
'country' => 'Japan',
'visits' => 25,
'newVisits' => 15,
'newVisitsPercent' => 60));
?>
我想按数组的"visites"键的降序对数组进行排序。
所需阵列为
<?php
$country = array(
array(
'country' => 'USA',
'visits' => 30,
'newVisits' => 15,
'newVisitsPercent' => 50),
array(
'country' => 'Japan',
'visits' => 25,
'newVisits' => 15,
'newVisitsPercent' => 60),
array(
'country' => 'India',
'visits' => 22,
'newVisits' => 16,
'newVisitsPercent' => 72.7));
?>
尝试在SO中搜索,所有结果都根据关键字的值进行排序。请告诉我我们需要使用哪个功能。
我查看了ksort,多排序函数
查看usort
的文档:http://www.php.net/manual/en/function.usort.php
PHP有一个名为usort()的内置函数,它可以对这些类型的数组进行排序。
你的比较函数可能看起来像这样:
function mycmp($a, $b) {
return intval($a['visits']) - intval($b['visits']);
}