Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/226.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 最小脚本--仍然无法修改标头信息-标头已发送_Php_Http_File Upload_Download - Fatal编程技术网

Php 最小脚本--仍然无法修改标头信息-标头已发送

Php 最小脚本--仍然无法修改标头信息-标头已发送,php,http,file-upload,download,Php,Http,File Upload,Download,这让我快发疯了。这似乎是一个简单的错误——我已经看到几十篇关于他们脚本的帖子比我的要复杂得多 我有一个php脚本,它应该通过设置标题来强制下载。我将脚本精简为: <?php header("Content-Type: audio/mp3"); header("Content-Disposition: attachment; filename=\"audio.mp3\";" ); readfile("audio.mp3"); exit(); ?> 为什么我的标题会被发送出去?我试

这让我快发疯了。这似乎是一个简单的错误——我已经看到几十篇关于他们脚本的帖子比我的要复杂得多

我有一个php脚本,它应该通过设置标题来强制下载。我将脚本精简为:

<?php
header("Content-Type: audio/mp3");
header("Content-Disposition: attachment; filename=\"audio.mp3\";" );
readfile("audio.mp3");
exit();
?>


为什么我的标题会被发送出去?我试过开动和冲水,但到目前为止运气不好。这可能是我的主人的问题吗?我正在使用1和1.com

您的脚本在测试时运行良好--请确保脚本开头或结尾没有空格。

您确定脚本开头或结尾没有空格吗?当我在我的开发服务器上测试你的脚本时,它似乎工作得很好,所以代码没有问题。按照@WaynnLue的建议检查所有空格。您还可以删除
?>
,因为它不是必需的,有时可以插入空格。是的,没有空格!可能有一些隐藏的新线吗?我正在Visual Studio中的windows上编辑。请使用记事本…或适当的PHP编辑器,或者在文件开头使用unicode BOM表。在
之前,它们是2个不可见字节。问题是我的编辑器Visual Studio似乎在我的脚本之前添加了不可见字节。非常感谢。我删除了脚本开头的空格