php下载文件框提示保存 (你怎样在PHP中让文件下载框提示保存?)

如果你在使用PHP来写文件下载的功能,并希望用户在下载的时候看到一个保存文件的提示框,那么你需要了解两个方法:header和readfile。

header方法用于设置一些HTTP头信息,我们可以使用header(“Content-Disposition: attachment; filename=\”文件名\””);来告诉浏览器以附件方式下载,其中“文件名”就是你希望用户看到的文件名,可以是你的程序计算出来的,也可以是硬编码进去的。

readfile方法用于读取文件内容并直接输出,这样就不需要先读取到内存中再输出了,可以减少一些内存的开销。调用方法如下:


header("Content-Disposition: attachment; filename=\"文件名\"");
readfile("文件路径");

其中“文件路径”可能是一个绝对路径,也可能是相对于网站根目录的路径,这与你的网站架构有关。

完整的下载代码如下:


<?php
$file = "文件路径";
$filename = "文件名";
header("Content-Disposition: attachment; filename=\"$filename\"");
readfile($file);
exit;
?>

可以将此代码保存为download.php文件,然后在其他文件中使用如下链接即可下载:


<a href="download.php">下载</a>

需要注意的是,在使用header之前不能有任何输出,否则会出现“Cannot modify header information”的错误。此外,也要注意文件路径的权限问题。

如有侵犯您的权益请邮件发送:rainpro@foxmail.com,站长看到会第一时间处理
客栈猫 » php下载文件框提示保存 (你怎样在PHP中让文件下载框提示保存?)

提供最优质的资源集合

立即查看 了解详情