本文实例讲述了php实现简单文件下载的方法。分享给大家供大家参考。具体如下:
这里介绍的php文件下载代码,只是简单实现了一张图片的下载功能,还不完善,最好是封装到一个类里,或是采用函数调用。感兴趣的朋友可以在此基础上加以完善!
php文件下载代码如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
<?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程序设计有所帮助。