Группируйте строки 2d-массива по столбцу и создавайте отдельные массивы [дубликат]Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Группируйте строки 2d-массива по столбцу и создавайте отдельные массивы [дубликат]

Сообщение Anonymous »

Я хотел бы разделить массив:

Код: Выделить всё

$o = json_decode('[{"id":"1","color":"green"},{"id":"2","color":"green"},{"id":"3","color":"yellow"},{"id":"4","color":"green"}]');
на основе атрибута цвета каждого элемента и заполнения соответствующих подмассивов

Код: Выделить всё

$a = array("green", "yellow", "blue");

function isGreen($var) {
return ($var->color == "green");
}

$greens = array_filter($o, "isGreen");
$yellows = array_filter($o, "isYellow");
// and all possible categories in $a..
Моя $a имеет длину > 20 и может увеличиваться еще больше, поэтому мне нужен динамический способ, а не писать функции вручную.
Похоже, не существует функции array_split() для создания всех отфильтрованных массивов

иначе мне может понадобиться своего рода лямбда-функция.

Подробнее здесь: https://stackoverflow.com/questions/122 ... ate-arrays
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»