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

98
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 получение вложенных полей

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

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

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

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

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

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

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

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

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

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

331