list — PHP array_multisort выдает ошибку

Я новичок в PHP и пытаюсь отсортировать список ассоциативных массивов. Я хочу отсортировать их по семейному полю, просто по строке, в порядке убывания. Всякий раз, когда я пытаюсь отсортировать ассоциативный массив … массив, он выдает мне эту ошибку.

Warning: array_multisort(): Argument #1 is expected to be an array or a sort flag.

Код PHP

<?php

$allColors = array(
'0' => array(
"id"=> "1",
"family"=> "blue",
"name"=> "ariel blue",
"hex"=> "#339FFF"),

'3' => array(
"id"=> "3",
"family"=> "green",
"name"=> "forest",
"hex"=> "#FAFF33"),

'1' => array(
"id"=> "2",
"family"=> "blue",
"name"=> "aqua marine",
"hex"=> "#339FFF"),

'4' => array(
"id"=> "4",
"family"=> "green",
"name"=> "lime",
"hex"=> "#FAFF33"),

'2' => array(
"id"=> "5",
"family"=> "blue",
"name"=> "teal",
"hex"=> "#339FFF"),

'5' => array(
"id"=> "6",
"family"=> "green",
"name"=> "yellow-green",
"hex"=> "#FAFF33")
);

array_multisort($family, SORT_DESC, $allColors);

?>

-1

Решение

Если вы пытаетесь отсортировать массив по «семейству», то первым параметром для array_multisort должно быть содержимое столбца «семейство».

array_multisort( array_column( $allColors, 'family' ), SORT_DESC, $allColors );
1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector