无法使用PHP

时间:2015-09-25 19:51:30

标签: php csv download header

我在SO和互联网上阅读了大量文章并尝试了所有这些文章,但我仍然无法在PHP中创建CSV下载功能。

以下是我的代码:

$csvData = @$_POST['csv_data'];
if(trim($csvData))
{
    header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
    header('Content-Description: File Transfer');
    header("Content-type: text/csv");
    header("Content-Disposition: attachment; filename=data.csv");
    header("Expires: 0");
    header("Pragma: public");
    echo $csvData;
    exit;   
}

不是显示文件保存对话框,而是将CSV数据打印到我的浏览器中:(我在这里做错了什么?非常感谢任何帮助..

其他编辑:我将此数据发布到我的脚本中,该脚本会立即获取此数据并尝试下载。我的脚本是另一个文件中的include,这会有问题吗?我启用了error_reporting,发现我的头文件已被修改错误...

1 个答案:

答案 0 :(得分:0)

在HTTP中,标头在任何文本输出之前发送。

因此,如果您输出任何文本,PHP将关闭您的响应标题。

确保在修改标题之前保留任何文本输出,例如使用OB-cache