3v4l.org

run code in 300+ PHP versions simultaneously
<?php $csv = <<<TXT "1","July 1999"," 2,782,546 "," $17.38 "," $338,545.98 "," 3,004 ","" "2","August 1999"," 2,739,441 "," $18.68 "," $153,343.98 "," 3,023 ","" "3","September 1999"," 2,650,431 "," $20.86 "," $308,929.17 "," 3,042 ","" TXT; $data = []; foreach ( array_map('str_getcsv', explode("\n\n", $csv)) as $row ) { $data[$row[1]] = array_slice($row, 2, -1); } $result = []; foreach ($data as $k => $row) { foreach ($row as $i => $v) { $result[$i][$k] = trim($v); } } var_export($result);

preferences:
29.06 ms | 408 KiB | 5 Q