2011-06-08 86 views
0

我迫使文本文件下載,但我沒有在文本文件中找到換行符。它顯示\r\n換行符問題

header("Content-type: text/text"); 
header("Content-Disposition: attachment; filename=testi.txt"); 
foreach($results as $result){ 
echo $result['xrt'].' '.$result['CMP'].' '.$result['Add'].' '.$result['AFG'].' '.'Times'.' '.$result['range'].'\r\n'; 
} 
+0

啊PHP_EOL會做 – Autolycus 2011-06-08 21:30:44

+0

沒有, 「\ r \ n」 會做到這一點。 PHP_EOL根據腳本執行的平臺而變化。如果它是基於Linux的服務器,它將包含「\ n」,但如果它是您的Windows測試平臺,它將是「\ r \ n」。因此請保存並使用「\ r \ n」。否則,當您將站點從一臺服務器移到另一臺服務器時,您可能會感到意外。 – hakre 2011-06-08 21:42:59

回答

4

你可以使用PHP_EOL

header("Content-type: text/text"); 
header("Content-Disposition: attachment; filename=testi.txt"); 

foreach($results as $result){ 
    echo $result['xrt'].' '.$result['CMP'].' '.$result['Add'].' '.$result['AFG'].' '.'Times'.' '.$result['range'].PHP_EOL; 
} 

或者,如果你必須輸入它們,使用:"\r\n"

header("Content-type: text/text"); 
header("Content-Disposition: attachment; filename=testi.txt"); 

foreach($results as $result){ 
    echo $result['xrt'].' '.$result['CMP'].' '.$result['Add'].' '.$result['AFG'].' '.'Times'.' '.$result['range']."\r\n"; 
}