【问题标题】:\n not working when creating dynamic .csv file for user download in PHP\n 在 PHP 中为用户下载创建动态 .csv 文件时不起作用
【发布时间】:2015-12-29 00:04:55
【问题描述】:

我正在尝试创建一个动态生成的 csv 文件,供用户从我的应用程序中的一段 html 下载。一切正常,除了 \n 似乎没有在输出的文件中注册。它在生成的文件中显示为空。线条没有分开。

我已经尝试手动输入回显输出,但 \n 仍然没有在我的输出中产生换行符。我想知道它是否与我的标题有关,因为我也收到了控制台通知:

资源解释为文档,但使用 MIME 类型 text/csv 传输:

<?PHP
$tasks = $_GET['text'];

header("Content-type: text/csv");
header("Content-Disposition: attachment; filename='myProject.csv'");
header("Pragma: no-cache");
header("Expires: 0");

$tasks = str_replace('</br>',"\n",$tasks);

echo $tasks;

exit();
?>

【问题讨论】:

    标签: php csv line-breaks


    【解决方案1】:
    $tasks = str_replace('</br>',"\n",$tasks);
    

    您似乎在混合single quotesdouble quotes。在php中可以吗? (通常单引号用于char,如\n 这里)。

    另外:你可以试试"\r\n"

    【讨论】:

    • "\r\n" 完全符合我的要求。谢谢你!!!我使用混合引号是因为我的习惯是单一的,但是在阅读其他人的 stakoverflow 问题时,建议在 \n 周围使用双引号。再次感谢。
    • 很高兴听到它成功了! (如果这解决了您的问题,请不要忘记投票并接受答案:)
    猜你喜欢
    • 2014-06-22
    • 2010-09-18
    • 2014-08-29
    • 1970-01-01
    • 1970-01-01
    • 2017-10-19
    • 1970-01-01
    • 1970-01-01
    • 2012-11-26
    相关资源
    最近更新 更多