很多站长朋友们都不太清楚php服务器下载文件,今天小编就来给大家整理php服务器下载文件,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 PHP实现文件下载 2、 php如何让服务器用代理下载文件 3、 PHP如何下载文件 PHP实现文件下载2种方法
1直接做个超链接,地址为文件的地址
<a href="文件地址">下载</a>
2流输出
<?php
$file=fopen('文件地址',"r");
header("Content-Type: application/octet-stream");
header("Accept-Ranges: bytes");
header("Accept-Length: ".filesize('文件地址'));
header("Content-Disposition: attachment; filename=文件名称");
echo fread($file,filesize('文件地址'));
fclose($file);
?>
推荐第二种
因为第一种方法只能下载浏览器不能解析的文件,比如rar啊,脚本文件之类。如果文件是图片或者txt文档,就会直接在浏览器中打开
而第二种方法是直接输出的文件流,不存在上述问题
php如何让服务器用代理下载文件访问PHP服务器,但是从内网机器上获取文件下载?
如果你内网那台机子有独立IP的话,可以分配个子域名。
如果没有独立IP的话,试试端口映射。
PHP如何下载文件// 下载文件 文件用绝对路径
ob_clean();
header('Pragma: public');
header('Last-Modified:'.gmdate('D, d M Y H:i:s') . 'GMT');
header('Cache-Control:no-store, no-cache, must-revalidate');
header('Cache-Control:pre-check=0, post-check=0, max-age=0');
header('Content-Transfer-Encoding:binary');
header('Content-Encoding:none');
header('Content-type:multipart/form-data');
header('Content-Disposition:attachment; filename="'.$filename.'"'); //设置下载的默认文件名
header('Content-length:'. filesize($dfile)); //要下载的文件
$fp = fopen($dfile, 'r');
while(connection_status() == 0 $buf = @fread($fp, 8192)){
echo $buf;
}
fclose($fp);
@unlink($dfile);
@flush();
@ob_flush();
exit();
关于php服务器下载文件的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于php服务器下载文件 下载 php文件的详细内容...