@Zubastik_1

Как преобразовать массив в массив с одним полем, максимальным по значению (с примером)?

Как мне преобразовать такой массив в тот что ниже, то есть оставить только максимальные значения по одному полю?
Array
(
    [Dima] => Array
        (
            [0] => Array
                (
                    [id] => 61
                    [price] => 9
                    [time] => 2018-03-13 18:31:01
                )

            [1] => Array
                (
                    [id] => 62
                    [price] => 6
                    [time] => 2018-03-13 18:31:01
                )

            [2] => Array
                (
                    [id] => 63
                    [price] => 32
                    [time] => 2018-03-13 18:31:01
                )

        )

    [Nick] => Array
        (
            [0] => Array
                (
                    [id] => 65
                    [price] => 68
                    [time] => 2018-03-13 18:32:01
                )

            [1] => Array
                (
                    [id] => 67
                    [price] => 91
                    [time] => 2018-03-14 00:00:02
                )

        )

)

вышестоящий преобразовать в этот снизу?
Array
(
    [Dima] => Array ([price] => 32) //максимальное значение прайса у Димы
    [Nick] => Array ([price] => 91)//максимальное значение прайса у Ника

)
  • Вопрос задан
  • 66 просмотров
Решения вопроса 1
lidacriss
@lidacriss
wtf
конкретно ваш случай
$new_arr = [];
foreach ($arr as $name => $item)
    $new_arr[$name] = ['price' => max(array_column(array_values($item), 'price'))];
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы