1
我正在尝试为下载文件创建临时下载链接。 我的代码是:在PHP中下载文件
$file_temp_adrs = "temp/".md5(microtime());
mkdir($file_temp_adrs);
$file_temp_adr = $file_temp_adrs."/".$fileinfo['org_filename'];
$file_org_adr = "files/".$fileinfo['filename'];
copy($file_org_adr , $file_temp_adr);
$finfo = finfo_open(FILEINFO_MIME_TYPE);
$mime_type = finfo_file($finfo, $file_temp_adr);
finfo_close($finfo);
$name = basename($file_temp_adr);
$size = filesize($file_temp_adr);
header("Content-Disposition: attachment; filename=\"".$name."\"");
header("Content-Type: $mime_type");
header("Content-Length: $size");
header("Connection: close");
当我下载按钮点击,浏览器会保存与真实姓名或延长,但文件大小的文件是0KB是不可用的。 哪里错了?
你是什么内容的长度? ($ size) – Alexei
在关闭连接之前,您需要将文件流式传输给用户。尝试使用'fpassthru'。 –
@Alexei它取决于文件。 –