我用fputcsv生成csv文件,它工作得很好,但是当我在记事本(Windows)中查看csv文件时,没有新的行。所有的行都只有一行,换行符应该在哪里,有一个sqaure (损坏的字符)。例如,Mac上的其他编辑器可以正确地显示带分隔符的行。
有没有办法解决这个问题,因为CSV需要导入,而导入器也看不到换行符。
发布于 2010-03-04 18:05:09
尝试使用Notepad++,它可以更正确地处理\n换行符。
另外,请参阅此响应inn fputcsv文档:http://lv.php.net/manual/en/function.fputcsv.php#90883
发布于 2010-03-11 06:44:25
http://bugs.php.net/bug.php?id=46367
这是PHP中的一个已知且未修复的错误。
尝试使用fwrite($fp,'"'.implode('","',str_replace('"','""',$data_array)).'"'.PHP_EOL);
发布于 2010-03-04 18:05:23
将\r\n放在代码中每一行的末尾。
其他快速修复:在WordPad中打开你生成的文件,它应该会显示它们很好,按Cntr+S,现在在记事本中打开,它应该也会显示很好。
编辑:
基于下面的注释,只需修改您的代码如下:
$orders_newlines = array();
foreach($orders as $value)
{
$orders_newlines[] = $value . "\r\n";
}现在在循环中使用$orders_newlines变量而不是$orders。
希望这能有所帮助。
https://stackoverflow.com/questions/2378268
复制相似问题