2012-03-01 71 views
4

所以我有这个在我的PHP脚本在我的测试地点:如何让php文件下载?

$file="clip.mp4"; 
$fake="clip_testing.mp4"; 
$fsize = filesize($file); 
header("Content-Length: $fsize"); 
header("Content-Disposition: attachment; filename=$fake"); 
header("Content Type: application/download"); 

set_time_limit(0); 
$fs = @fopen($file,"rb"); 

while(!feof($fs)) 

{ 
    print(@fread($fs, 1024*8)); 
    ob_flush(); 
    flush(); 
} 

当我在一个链接中使用这并下载文件,第7个字节的我的文件被更改。所以我必须在我可以使用它之前编辑该程序。我添加了一张图片,让我更清楚当我说前7个字节发生了变化时我在说什么。我是否缺少标题?谁能帮我? Comparison

编辑:如果你们因为它的大小而查看图片时出现问题,请在没有格式设置的新选项卡中查看图片,以便将其作为原始尺寸。

+0

你在哪里阅读文件?也许你首先上传了这个文件。因此请检查上传的文件(位于C:\ Wamp \ WWW \ Project \ uploads'),而不是您的“我的文档”中的原始文件。它可能在上传时发生了变化。 – 2012-03-01 06:02:31

回答

8

我认为你的<?php标签前有4条空行。

8字节是4倍linebreaks \r\n

+0

哇!那是天才..那就是它!谢谢! – 2012-03-01 06:04:28

+0

@AndrewButler不客气! – rekire 2012-03-01 06:09:49