fputcsv и Блокнот

Я генерирую файлы csv с fputcsv, и он работает отлично, но когда я просматриваю файл csv в «Блокноте» (Windows), новых строк нет. Все строки находятся всего в 1 строке, и там, где предполагается, что это будет строка, есть sqaure (поврежденный символ). Другие редакторы на Mac, например, показывают строки с разрывами правильно.

Есть ли способ исправить эту проблему, поскольку CSV необходимо импортировать, а импортер также не видит линии.

Попробуйте использовать Notepad ++, который корректно обрабатывает символы \n .

Кроме того, см. fputcsv документацию по fputcsv : http://lv.php.net/manual/en/function.fputcsv.php#90883

http://bugs.php.net/bug.php?id=46367

Это известная и нефиксированная ошибка в PHP.

Пока они не исправит это, попробуйте использовать fwrite ($ fp, '"' .implode ('", "', str_replace ('' ',' '' ', $ data_array)).'" '. PHP_EOL);

поместите \r\n в конец каждой строки вашего кода.

Другое быстрое исправление: откройте свой сгенерированный файл в WordPad, он должен показать их в порядке, нажмите Cntr + S и теперь откройте в блокноте, он также должен хорошо отобразить это.

Редактировать:

На основе приведенных ниже комментариев просто измените свой код следующим образом:

 $orders_newlines = array(); foreach($orders as $value) { $orders_newlines[] = $value . "\r\n"; } 

Теперь используйте переменную $orders_newlines вместо $orders в вашем цикле.

Надеюсь, это поможет.