PHP中的新行

时间:2014-09-17 17:09:36

标签: php csv line

我正在制作CSV文件,我需要在每个程序后创建一个新行。标准\ n \ r \ n不起作用。

代码如下:

while ($resultD=mysql_fetch_assoc($queryDown)) 
        {
            $csv.= $resultD["first_name"].' , '.$resultD["last_name"].' , '.$resultD["login"].' , '.$resultD["password"].'\n\r';
        }
        $filename= "export.csv";
        $theFile=fopen($filename,"w");
        fwrite($theFile, $csv);

3 个答案:

答案 0 :(得分:6)

使用"\r\n"代替'\n\r'

您需要使用双引号""来识别转义序列\r\n。单引号不会这样做。

修改

正如迈克尔所说,你也可以再次使用PHP_EOL而不是'\n\r'

这会生成一个在多个平台上兼容的换行符。


来自strings上的PHP文档:

  

注意:与双引号和heredoc语法不同,特殊字符的变量和转义序列在单引号字符串中不会扩展。

答案 1 :(得分:4)

您可以使用:

$csv .= '...' . "\r\n";

或者

$csv .= '...' . PHP_EOL;

或者查看fputcsv以便轻松使用它:http://php.net/manual/en/function.fputcsv.php

答案 2 :(得分:0)

$csv.= $resultD["first_name"].' , '.$resultD["last_name"].' , '.$resultD["login"].' , '.$resultD["password"]."\n";