Есть массив такого вида
Array
(
[0] => Array
(
[name] => Внуков Сергій Миколайович
[sum] => 250
)
[1] => Array
(
[name] => Внуков Сергій Миколайович
[sum] => 250
)
[2] => Array
(
[name] => Внуков Сергій Миколайович
[sum] => 489
)
[3] => Array
(
[name] => Внуков Сергій Миколайович
[sum] => 489
)
[4] => Array
(
[name] => Внуков Сергій Миколайович
[sum] => 489
)
[5] => Array
(
[name] => Внуков Сергій Миколайович
[sum] => 250
)
[6] => Array
(
[name] => Внуков Сергій Миколайович
[sum] => 869
)
[7] => Array
(
[name] => Внуков Сергій Миколайович
[sum] => 489
)
[8] => Array
(
[name] => Внуков Сергій Миколайович
[sum] => 869
)
[9] => Array
(
[name] => Внуков Сергій Миколайович
[sum] => 812
)
[10] => Array
(
[name] => Внуков Сергій Миколайович
[sum] => 812
)
[11] => Array
(
[name] => Внуков Сергій Миколайович
[sum] => 812
)
[12] => Array
(
[name] => Внуков Сергій Миколайович
[sum] => 812
)
[13] => Array
(
[name] => Внуков Сергій Миколайович
[sum] => 1505
)
[14] => Array
(
[name] => Внуков Сергій Миколайович
[sum] => 1156
)
[15] => Array
(
[name] => Внуков Сергій Миколайович
[sum] => 1156
)
[16] => Array
(
[name] => Внуков Сергій Миколайович
[sum] => 1505
)
)
Как его преобразовать к такому виду использую php 5.3
Array(
[0] => Array
(
[name] => Внуков Сергій Миколайович
[sum] => 13780 сумма общая
)
)
Можно циклом пройти по массиву, в первой итерации получить имя и начальную сумму, а во всех последующих - просто суммировать необходимые значения. После выхода из цикла изменить структуру результирующего массива, путём его перезаписи ранее полученными в цикле данными. На примере это выглядит так:
$result = array();
foreach ($array as $arr) {
!empty($result['name']) ?: $result['name'] = $arr['name'];
$result['sum'] += $arr['sum'];
}
$result = array($result);
echo '<pre>'; print_r($result); echo '</pre>';
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости