From: Jason Woofenden Date: Sun, 5 Feb 2012 00:06:00 +0000 (-0500) Subject: csv: no trailing \t, no newlines within X-Git-Url: https://jasonwoof.com/gitweb/?p=wfpl.git;a=commitdiff_plain;h=24b62ea46a5cd87139364d7291eaf78dbb284aeb csv: no trailing \t, no newlines within --- diff --git a/csv.php b/csv.php index d2d90e3..f9e311a 100644 --- a/csv.php +++ b/csv.php @@ -4,14 +4,21 @@ # little sense, and does not actually have anything to do with commas. # pass in a 2d array (array of rows) and it'll send it to the browser +# I can't figure out how to get multi-line fields to work, so replace newlines with 4 spaces. function array2d_to_csv_download($data, $filename) { header('Content-type: application/csv'); header('Content-Disposition: attachment; filename=' . $filename); foreach($data as $row) { + $first = true; foreach($row as $el) { - echo '"' . str_replace('"', '""', $el) . "\"\t"; + if($first) { + $first = false; + } else { + echo "\t"; + } + echo '"' . str_replace("\n", " ", str_replace('"', '""', $el)) . '"'; } - echo "\n"; # apparently can be \n or \r\n + echo "\r\n"; } exit(); }