3v4l.org

run code in 300+ PHP versions simultaneously
<?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 );
Output for 5.6.0 - 5.6.40, 7.0.0 - 7.0.33, 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.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.4, 8.3.6
array ( 'A Capella Salon' => array ( 'blankets' => 11, 'sleepingbags' => 0, ), 'Allegan Library' => array ( 'blankets' => 34, 'sleepingbags' => 2, ), 'Allegan library' => array ( 'blankets' => 13, 'sleepingbags' => 0, ), 'Avente' => array ( 'blankets' => 2, 'sleepingbags' => 0, ), 'Biggby - Paw Paw ' => array ( 'blankets' => 13, 'sleepingbags' => 1, ), 'Biggby - Plainwell' => array ( 'blankets' => 28, 'sleepingbags' => 3, ), 'Biggby - Sprinkle' => array ( 'blankets' => 25, 'sleepingbags' => 0, ), 'Biggby - West Main' => array ( 'blankets' => 10, 'sleepingbags' => 0, ), 'Biggby - Westnedge 311' => array ( 'blankets' => 9, 'sleepingbags' => 0, ), 'Biggby - Westnedge BestBuy' => array ( 'blankets' => 4, 'sleepingbags' => 0, ), 'Biggby - Williamston' => array ( 'blankets' => 21, 'sleepingbags' => 9, ), )
Output for 8.3.5
Warning: PHP Startup: Unable to load dynamic library 'sodium.so' (tried: /usr/lib/php/8.3.5/modules/sodium.so (libsodium.so.23: cannot open shared object file: No such file or directory), /usr/lib/php/8.3.5/modules/sodium.so.so (/usr/lib/php/8.3.5/modules/sodium.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0 array ( 'A Capella Salon' => array ( 'blankets' => 11, 'sleepingbags' => 0, ), 'Allegan Library' => array ( 'blankets' => 34, 'sleepingbags' => 2, ), 'Allegan library' => array ( 'blankets' => 13, 'sleepingbags' => 0, ), 'Avente' => array ( 'blankets' => 2, 'sleepingbags' => 0, ), 'Biggby - Paw Paw ' => array ( 'blankets' => 13, 'sleepingbags' => 1, ), 'Biggby - Plainwell' => array ( 'blankets' => 28, 'sleepingbags' => 3, ), 'Biggby - Sprinkle' => array ( 'blankets' => 25, 'sleepingbags' => 0, ), 'Biggby - West Main' => array ( 'blankets' => 10, 'sleepingbags' => 0, ), 'Biggby - Westnedge 311' => array ( 'blankets' => 9, 'sleepingbags' => 0, ), 'Biggby - Westnedge BestBuy' => array ( 'blankets' => 4, 'sleepingbags' => 0, ), 'Biggby - Williamston' => array ( 'blankets' => 21, 'sleepingbags' => 9, ), )

preferences:
214.49 ms | 404 KiB | 287 Q