<?php
$a = [array ( 'id' => '1', 'location' => 'A Capella Salon', 'blankets' => '11', 'sleepingbags' => '0',),
array ( 'id' => '2', 'location' => 'Allegan Library', 'blankets' => '22', 'sleepingbags' => '0', ),
array ( 'id' => '3', 'location' => 'Allegan library', 'blankets' => '13', 'sleepingbags' => '0', ),
array ( 'id' => '4', 'location' => 'Allegan Library', 'blankets' => '12', 'sleepingbags' => '2', ),
array ( 'id' => '5', 'location' => 'Avente', 'blankets' => '2', 'sleepingbags' => '0', ),
array ( 'id' => '6', 'location' => 'Biggby - Paw Paw ', 'blankets' => '10', 'sleepingbags' => '1', ),
array ( 'id' => '7', 'location' => 'Biggby - Paw Paw ', 'blankets' => '3', 'sleepingbags' => '0', ),
array ( 'id' => '8', 'location' => 'Biggby - Plainwell', 'blankets' => '7', 'sleepingbags' => '1', ),array ( 'id' => '9', 'location' => 'Biggby - Plainwell', 'blankets' => '7', 'sleepingbags' => '0', ),array ( 'id' => '10', 'location' => 'Biggby - Plainwell', 'blankets' => '7', 'sleepingbags' => '0', ),array ( 'id' => '11', 'location' => 'Biggby - Plainwell', 'blankets' => '5', 'sleepingbags' => '0', ),array ( 'id' => '12', 'location' => 'Biggby - Plainwell', 'blankets' => '2', 'sleepingbags' => '2', ),array ( 'id' => '13', 'location' => 'Biggby - Sprinkle', 'blankets' => '20', 'sleepingbags' => '0', ),array ( 'id' => '14', 'location' => 'Biggby - Sprinkle', 'blankets' => '5', 'sleepingbags' => '0', ),array ( 'id' => '15', 'location' => 'Biggby - West Main', 'blankets' => '10', 'sleepingbags' => '0', ),array ( 'id' => '16', 'location' => 'Biggby - Westnedge 311', 'blankets' => '6', 'sleepingbags' => '0', ),array ( 'id' => '17', 'location' => 'Biggby - Westnedge 311', 'blankets' => '2', 'sleepingbags' => '0', ),array ( 'id' => '18', 'location' => 'Biggby - Westnedge 311', 'blankets' => '1', 'sleepingbags' => '0', ),array ( 'id' => '19', 'location' => 'Biggby - Westnedge BestBuy', 'blankets' => '4', 'sleepingbags' => '0', ),array ( 'id' => '20', 'location' => 'Biggby - Williamston', 'blankets' => '21', 'sleepingbags' => '9', )];
$sumBlankets = [];
foreach ($a as $row) {
$k = $row['location']; // important
if (!array_key_exists($k, $sumBlankets)) {
$sumBlankets[$k] = ['blankets'=>0, 'sleepingbags'=>0];
}
$sumBlankets[$k]['blankets'] += $row['blankets'];
$sumBlankets[$k]['sleepingbags'] += $row['sleepingbags'];
}
var_export( $sumBlankets );
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 77) Position 1 = 3, Position 2 = 20
Branch analysis from position: 3
2 jumps found. (Code = 78) Position 1 = 4, Position 2 = 20
Branch analysis from position: 4
2 jumps found. (Code = 43) Position 1 = 9, Position 2 = 11
Branch analysis from position: 9
1 jumps found. (Code = 42) Position 1 = 3
Branch analysis from position: 3
Branch analysis from position: 11
Branch analysis from position: 20
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 20
filename: /in/JIfWe
function name: (null)
number of ops: 25
compiled vars: !0 = $a, !1 = $sumBlankets, !2 = $row, !3 = $k
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
2 0 E > ASSIGN !0, <array>
10 1 ASSIGN !1, <array>
12 2 > FE_RESET_R $6 !0, ->20
3 > > FE_FETCH_R $6, !2, ->20
13 4 > FETCH_DIM_R ~7 !2, 'location'
5 ASSIGN !3, ~7
15 6 ARRAY_KEY_EXISTS ~9 !3, !1
7 BOOL_NOT ~10 ~9
8 > JMPZ ~10, ->11
16 9 > ASSIGN_DIM !1, !3
10 OP_DATA <array>
19 11 > FETCH_DIM_R ~14 !2, 'blankets'
12 FETCH_DIM_RW $12 !1, !3
13 ASSIGN_DIM_OP += 1 $12, 'blankets'
14 OP_DATA ~14
20 15 FETCH_DIM_R ~17 !2, 'sleepingbags'
16 FETCH_DIM_RW $15 !1, !3
17 ASSIGN_DIM_OP += 1 $15, 'sleepingbags'
18 OP_DATA ~17
12 19 > JMP ->3
20 > FE_FREE $6
24 21 INIT_FCALL 'var_export'
22 SEND_VAR !1
23 DO_ICALL
24 > RETURN 1
Generated using Vulcan Logic Dumper, using php 8.0.0
preferences:
166.14 ms | 1399 KiB | 15 Q