PHP中实现文件下载的示例分析

  介绍

小编给大家分享一下PHP中实现文件下载的示例分析,希望大家阅读完这篇文章之后都有所收获、下面让我们一起去探讨吧!

示例代码如下:

& lt; PHP ?/* *   *   *参数说明:   *   *,,file_name 美元;,文件名(中英文)   _SERVER *,, [& # 39; document_root # 39;],,获取apache所在路径   *   */function 下载(file_name美元){   ,,//对中文文件名进行转码   ,,,$ file_name=iconv (“UTF-8",“GB2312", file_name美元);,,   ,,,,//文件绝对路径:E:干净自己的/里面/www/演示/对象/DownfileSource/?qq.txt   ,,,filepath 美元;=,$ _SERVER [& # 39; document_root # 39;] !”/演示/对象/DownfileSource/癴ile_name美元;,,      ,,,,如果(! file_exists (filepath美元)){,//检查文件是否存在   ,,,,,echo “该文件不存在!“;   ,,,,返回;   ,,,,}      ,,,,fp 美元;=,fopen (filepath美元,& # 39;" # 39;);,,//打开文件   ,,,,,file_size 美元;=,文件大小($ filepath);,,//计算文件大小   ,,,,,if  (file_size>美元;1),{   ,,,,,,echo “& lt; script> window.alert(& # 39;文件过大,您没权限下载& # 39;)& lt;/script>“;   ,,,,,,返回;   ,,,,,}      ,,,,//HTTP头部信息   ,,,,,头(“内容类型:应用程序/octet-stream");   ,,,,,头(“Accept-Ranges: bytes");   ,,,头(“Accept-Length:“。file_size美元);   ,,,,,头(“附加项:附件;,文件名=癴ile_name美元);      ,,,,,//输出文件内容,echo 从文件中读(fp美元,,file_size美元);      ,,,buffer 美元;=,1024;   ,,,//为了下载安全,做一个文件字节读取计数器   ,,,file_count 美元;=,0;   ,,,//判断文件是否结束,feof   ,,,while  (! feof (fp),,,, (file_size - file_count 美元;祝辞,0)),{      ,,,,,file_data 美元;=,从文件中读(fp美元,,缓冲);,//统计读了多少字节   ,,,,,file_count +=美元缓冲区;      ,,,,,echo “file_data"美元;,,//把数据会送给浏览器   ,,,}   ,,,,文件关闭(fp);   }//调用   ,下载(“qq.txt");//只,需填写文件名即可   ?在

看完了这篇文章,相信你对“PHP中实现文件下载的示例分析”有了一定的了解,如果想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!

PHP中实现文件下载的示例分析