<?php
$arr = json_decode('[{"name":"BBQ - Small (26cm)","params":"","price":"12.99"},
{"name":"Coca-cola 0.5","params":"","price":"1"},
{"name":"BBQ - Small (26cm)","params":"","price":"12.99"},
{"name":"BBQ - Mid (31cm)","params":"","price":"14.99"},
{"name":"BBQ - Small (26cm)","params":"","price":"12.99"},
{"name":"Bolognese - Small (26cm)","params":"","price":"12"},
{"name":"Coca-cola 0.5","params":"","price":"1"},
{"name":"BBQ - Small (26cm)","params":"","price":"12.99"}]', true);
$new['total'] =0;
foreach($arr as $sub){
if(!isset($new[$sub['name']]['count'])){
$new[$sub['name']]['count'] = 0;
$new[$sub['name']]['total'] = 0;
}
$new[$sub['name']]['count']++;
$new[$sub['name']]['total'] += $sub['price'];
$new['total'] += $sub['price'];
}
var_export($new);
- Output for 7.1.0 - 7.1.33, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.33, 8.2.0 - 8.2.29, 8.3.0 - 8.3.26, 8.4.1 - 8.4.13
- array (
'total' => 80.95,
'BBQ - Small (26cm)' =>
array (
'count' => 4,
'total' => 51.96,
),
'Coca-cola 0.5' =>
array (
'count' => 2,
'total' => 2,
),
'BBQ - Mid (31cm)' =>
array (
'count' => 1,
'total' => 14.99,
),
'Bolognese - Small (26cm)' =>
array (
'count' => 1,
'total' => 12,
),
)
preferences:
143.33 ms | 408 KiB | 5 Q