<?php
$fieldNames = [
'id',
'location',
'blankets',
'sleepingbags'
];
$file = new \SplFileObject('collections1.csv', 'rb');
$file->setCsvControl(",", "\"", "\\");
$file->setFlags(\SplFileObject::READ_CSV);
$sumBlankets = [];
foreach ($file as $i => $line) {
$row = array_combine($fieldNames, $line);
$k = $row['location']; // important
if (!array_key_exists($k, $sumBlankets)) {
$sumBlankets[$k] = [ 'blankets' => 0, 'sleepingbags' => 0 ];
}
if ( is_numeric($row['blankets']) )
{
$sumBlankets[$k]['blankets'] += $row['blankets'];
}
if ( is_numeric($row['sleepingbags']) )
{
$sumBlankets[$k]['sleepingbags'] += $row['sleepingbags'];
}
}
var_export( $sumBlankets );
preferences:
30.21 ms | 402 KiB | 5 Q