php实现简单文件下载的方法

2015 年 2 月 23 日3560

本文实例讲述了php实现简单文件下载的方法。分享给大家供大家参考。具体如下:

这里介绍的php文件下载代码,只是简单实现了一张图片的下载功能,还不完善,最好是封装到一个类里,或是采用函数调用。感兴趣的朋友可以在此基础上加以完善!

php文件下载代码如下:





<?php



$file_name = "2.jpg";//需要下载的图片



define("SPATH","/php/image/");//存放图片的相对路径



$file_sub_path = $_SERVER['DOCUMENT_ROOT'];//网站根目录的绝对地址



$file_path = $file_sub_path.SPATH.$file_name;//图片绝对地址,即前面三个连接



//判断文件是否存在



if(!file_exists($file_path)){



echo "该文件不存在";



return;



}



$fp = fopen($file_path,"r");//打开文件



$file_size = filesize($file_path);//获取文件大小



/*



*下载文件需要用到的header



*/



header("Content-type:application/octet-stream");



header("Accept-Ranges:bytes");



header("Accept-Length:".$file_size);



header("Content-Disposition:attachment;filename=".$file_name);







$buffer=1024;



$file_count=0;



//向浏览器返回数据



while(!feof($fp) && $file_count<$file_size){



$file_con = fread($fp,$buffer);



$file_count += $buffer;



echo $file_con;//这里如果不echo,只会下载到0字节的文件



}



fclose($fp);



?>

希望本文所述对大家的php程序设计有所帮助。

0 0