Как сделать порядок array по vote?

102
18 мая 2021, 17:40

Сейчас:

Array
(
    [Dimata4] => Array
        (
            [date] => 6 минут назад
            [vote] => 3
        )
    [detractor] => Array
        (
            [date] => 9 часов назад
            [vote] => 6
        )
    [Smaill331] => Array
        (
            [date] => 20 часов назад
            [vote] => 2
        )
    [Dizic] => Array
        (
            [date] => 20 часов назад
            [vote] => 3
        )
)

А мне надо:

Array
(
    [detractor] => Array
        (
            [date] => 9 часов назад
            [vote] => 6
        )
    [Dimata4] => Array
        (
            [date] => 6 минут назад
            [vote] => 3
        )
     [Dizic] => Array
        (
            [date] => 20 часов назад
            [vote] => 3
        )
    [Smaill331] => Array
        (
            [date] => 20 часов назад
            [vote] => 2
        )
)

Как мне по [vote] делать порядок ? Код который так делает:

foreach ($range as $key => $value) {
  $table = site::$site->Csql['user'];
  $user = site::$site->PDO->query("SELECT * FROM {$table['table']} WHERE id=? ",array($value['user']))[0];
  if ($ranges[$user['user']]){
    $ranges[$user['user']]['vote'] = $ranges[$user['user']]['vote'] + 1;
  }else {
    $ranges[$user['user']] = array("date"=> showDate($value['date']), "vote"=> 1);
  }
}
Answer 1

$array - ваш массив

Пример раз:

usort($array, function($a, $b){
    return ($a['vote'] - $b['vote']);
});

Пример 1.5 (PHP 7):

usort($array, function ($a, $b) {
    return $a['vote'] <=> $b['vote'];
});

Пример два:

array_multisort(array_column($array, 'vote'), SORT_DESC, $array);
READ ALSO
Spring + mongodb получение вложенных полей

Spring + mongodb получение вложенных полей

есть записи следующего формата:

119
Как переворачивать страницу во время создания PDF-документа?

Как переворачивать страницу во время создания PDF-документа?

Я хочу создать PDF-файл с альбомной ориентацией страницКогда я меняю формат страницы на альбомный с помощью document

89
Intellij idea не видит библиотеку для RESTful Web Service

Intellij idea не видит библиотеку для RESTful Web Service

Пытаюсь создать RESTful приложениее, но Intellij idea не видит библиотеку, смена версии JAVA EE не помогаетКак можно решить эту проблему? Спасибо

124
Android: Как определить конец прокрутки GridView

Android: Как определить конец прокрутки GridView

Есть парсер, который вытаскивает с сайта ссылки на картинки и дальше при помощи Picasso они загружаются в GridViewТак как картинок очень много, вытащить...

337