Задать вопрос
@kolomat

Как сплюсовать значения в многомерном массиве по ключу?

Добрый день, подскажите по такому вопросу.
Есть массив вида
Array
(
    [balance] => Array
        (
            [0] => Array
                (
                    [id] => 1
                    [balance] => 10
                )

            [1] => Array
                (
                    [id] => 1
                    [balance] => 30
                )

            [2] => Array
                (
                    [id] => 1
                    [balance] => 50
                )

        )
)

Как сплюсовать значения по balance что бы получить на выходе массив вида
Array
(
    [id] => 1
    [balnce] => 90
)
  • Вопрос задан
  • 100 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 2
FanatPHP
@FanatPHP
Чебуратор тега РНР
в цикле
все операции над массивами производятся в цикле
Ответ написан
rozhnev
@rozhnev Куратор тега PHP
Fullstack programmer, DBA, медленно, дорого
$res = array_reduce (
	$data['balance'],
	function($res, $el) {
		if (isset($res[$el['id']])) $res[$el['id']] += $el['balance'];
                else $res[$el['id']] = $el['balance'];
		return $res;
	},
	[]
);


PHP array_reduce online
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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