2012-09-21 54 views
-2

使用下面的代码,我保存.csv文件服务器为什么file_put_contents显示对话框保存文件?

foreach($list as $item) 
{ 
    $csv .= join("\t", $item) . "\r\n"; 
} 

$csv = chr(255).chr(254).mb_convert_encoding($csv,"UTF-16LE","UTF-8"); 
header("Content-type: application/x-msdownload"); 
header("Content-disposition: csv; filename=CSV_".date("YmdHis").".csv; size=".strlen($csv)); 
$filename='CSV_'.$dateTimeNow.".csv"; 
file_put_contents($filename, $csv); // Create temp file 

.csv成功保存上,但该客户端仍在接收下载对话。我怎样才能阻止下载对话显示?

+5

如果您不希望客户端下载某些内容,那么您如何设置这些标头? – deceze

回答

4

如果CSV文件不打算发送到客户端系统,那么您不应该设置标头,这意味着您要向客户端发送.csv文件,即删除引起此响应的header行客户端。

+2

或者只是完全删除标题,因为他不希望客户端下载文件。 –

+1

啊,我把这个问题看成是“下载”。 Cripes,他为什么要为未被发送到客户端的东西设置标题? – Petesh

0
// header("Content-type: application/x-msdownload"); 
    // header("Content-disposition: csv; filename=CSV_".date("YmdHis").".csv; size=".strlen($csv)); 
相关问题