尝试在字符串中的输出文件中添加换行符

时间:2014-04-25 00:12:18

标签: php html string quotes

我有PHP从一个非常长的字符串中保存输出文件。我希望正在输出的代码格式正确,所以我试图在某些点添加换行符。我一直在尝试使用"\n",但由于某种原因,这不是诀窍..这是相关的代码:

foreach($headerColumn as $hColumn) { 
    $outputString .= '<td>' . $hColumn . '</td>' . "\n";
};

这里我将"\n"添加到字符串的末尾,但出于某种原因它输出如下:

<thead>
    <tr><td>Name</td><td>Ticker</td><td>Buy Date</td><td>Current Yield</td>
</tr>
</thead>

实际上,当我想要每个人都在自己的线上时......任何想法?如果它与文件的内容类型有关,这是我的文件写调用:

header('Content-Disposition: attachment; filename="sample.txt"');
header('Content-Type: text/plain'); # Don't use application/force-download - it's not a real MIME type, and the Content-Disposition header is sufficient
header('Content-Length: ' . strlen($outputString));
header('Connection: close');

echo $outputString;

谢谢!

2 个答案:

答案 0 :(得分:1)

我认为你想要使用的是PHP_EOL

  

PHP_EOL(string)   此平台的正确“行尾”符号。自PHP 4.3.10和PHP 5.0.2起可用

所以,举个例子:

$outputString .= '<td>' . $hColumn . '</td>' . PHP_EOL;

答案 1 :(得分:0)

我不知道这是不是最好的做法...但你实际上可以在代码中添加换行符,直到下一行不结束字符串引用:

foreach($headerColumn as $hColumn) { 
    $outputString .= '<td>' . $hColumn . '</td>' . "
    ";
};