I generate csv files with fputcsv and it works just fine, but when I view the csv file in Notepad (Windows) there is no new lines. All lines are in just 1 line, and where the linebreak is supposed to be, there is a sqaure (corrupted character). Other editors on Mac for example show the lines with breaks correctly.
Is there any way to fix this problem as the CSV needs to be imported, and the importer does not see the linebreaks as well.
Try using Notepad++ which handles
\n
newlines more correctly.Also, see this response inn
fputcsv
documentation: http://lv.php.net/manual/en/function.fputcsv.php#90883http://bugs.php.net/bug.php?id=46367
This is a known and unfixed bug in PHP.
Until they fix it, try using fwrite($fp, '"'.implode('","', str_replace('"', '""', $data_array)).'"'.PHP_EOL);
put
\r\n
to end of each line in your code.Other Quick Fix: Open your generated file in WordPad, it should show them fine, press Cntr+S and now open in notepad, it should show fine in that too.
Edit:
Based on the comments below, just modify your code as follows:
Now use
$orders_newlines
variable instead of$orders
in your loop.Hope that helps.