如何用php制作下载脚本

如何用php制作下载脚本,php,Php,我想在我的页面中创建一个下载链接, 用户将文本文件上传到服务器,我想下载这些文件, 请帮助我了解php,您需要正确设置,然后打印文件。您需要获得mime类型和文件大小,然后在发送文件之前设置正确的标题。试试这个: function sendFile($file) { $finfo = finfo_open(FILEINFO_MIME_TYPE); header('Content-type: ' . finfo_file($finfo, $file)); header('C

我想在我的页面中创建一个下载链接, 用户将文本文件上传到服务器,我想下载这些文件,
请帮助我了解php,

您需要正确设置,然后打印文件。

您需要获得mime类型和文件大小,然后在发送文件之前设置正确的标题。试试这个:

function sendFile($file) {
    $finfo = finfo_open(FILEINFO_MIME_TYPE);
    header('Content-type: ' . finfo_file($finfo, $file));
    header('Content-length: ' . filesize($file));
    $filename = basename($file);
    header("Content-Disposition: attachment; filename='$filename'");
    fpassthru($file);
    finfo_close($finfo);
}

你的问题很模糊,没有任何细节。最好的堆栈溢出问题描述了一个用例(与您一样,但有更多的细节和更少的英语惰性快捷方式),然后是您当前的方法,然后是您的方法当前未产生所需行为的方式。有时,关于这个问题的理论也会随之产生。像“我如何做到这一点”这样的问题,如果没有任何迹象表明你已经做了一些研究或亲自尝试过,通常不会吸引到富有成效的答案(这不是留言板)。祝你好运。致命错误:调用中未定义的函数finfo_open()。。。是PHP5.3+,对不起。如果您使用的是另一个版本的PHP+1,请使用
mime\u content\u type($file)
。顺便说一句,我使用的是5.2.9.+1,它适用于所有MIME类型,而不仅仅是文本。