当前位置:首页 > 日记 > 正文

解决大型php文件下载,http下载的详细方法

解决大型php文件下载,http下载的详细方法
当出现最近派生的PHP内存溢出问题时,其原因是生成的临时文件下载时间太大,无法容纳PHP内存,比如改变PHP内存限制的想法,但这只是一种延迟策略,因此想到另一种方法是文档读取。下载.
下面是源代码:
复制代码代码如下所示:
< PHP
可用美元=1。TMP ; / /临时下载的文件名
$ outfile =.xls用户订单; / /下载文件名保存到客户端
file_extension美元= strtolower(substr(strrchr(美元可用,,
/ / echo源文件;
如果(!Ereg({ TMP | txt | RAR | PDF | DOC }
/ /找到
如果(!is_file($可用)){
死亡()404文件没有找到!;
}
$ len =文件大小(合源文件); / /获取文件大小
为文件名= basename(合源文件); / /获取文件名
outfile_extension美元= strtolower(substr(strrchr($ outfile,,
根据扩展点浏览器输出格式
开关($ outfile_extension){
案例exe:
C型=应用美元/字节流;
打破;
案例zip:
美元=应用型/邮编;
打破;
案例MP3:
C型=音频美元/ MPEG ;
打破;
案例英里:
C型=美元视频/视频;
打破;
案例AVI:
C型=视频美元/ x-msvideo ;
打破;
违约:
C型=应用美元/力下载;
}
开始写标题
标题(缓存控件);
标题(缓存控件:公共);
设置输出浏览器格式
标题(内容类型:$ C型);
标题()内容配置:附件;文件名。为导出的文件);
标头(接受范围:字节);
文件大小=美元(合源文件);
/ /如果$ _server { 'http_range}参数
如果(isset($ _server { 'http_range ' })){
范围域头域的范围标头字段可以请求实体的一个或多个子范围。
例如,
代表第一个500字节:字节= 0-499
代表第二500字节:字节= 500-999
最后500个字节:字节= 500
指示500字节之后的范围:字节= 500—
第一个和最后一个字节:字节= 0-0,1
同时,指定了几个范围:字节= 500-600601-999
但是,服务器可以忽略该请求。如果条件得到包含范围请求头,响应将返回的状态代码206(partialcontent)而不是200(OK)。
* /
字节= 4390912至_server { 'http_range} /值后再连接断点
列表($,$范围)=爆炸( =)
如果是,下载丢失的部分
str_replace($美元范围,范围,); / /这句话什么…
美元:美元=大小1; / /文件的总字节数
美元:美元new_length =美元范围; / /得到下一个下载的长度
页眉(1.1部分内容);
标题(内容长度:new_length美元); / /输入长度
标题(内容范围:字节范围: /美元美元美元大小);当 / /内容范围:字节4908618-4988927 / 4988928 95%
{人}
第一个连接
美元:美元=大小1;
标题(内容范围:字节0美元/美元:大小); / /内容范围:字节0-4988927 / 4988928
标题(内容长度:。$大小);总输出
}
打开文件
$ FP = fopen($ 源文件
设置指针位置
fseek(fp美元,美元);
输出/不真实
而(!Feof($ FP)){
设置文件的最大执行时间
(0)set_time_limit;
打印(fread($ FP,1024×8)); / /输出文件
(刷新);输出缓冲区
ob_flush();
}
Fclose($ FP);
出口();

相关文章

如何使用FrontPage2003

如何使用FrontPage2003

如何使用,电脑软件,提问者的询问 2009-07-07 16时52分与 我想知道如何排版,也就是说如何把导航分成栏。 声卡故障 硬盘维护培训 回答某人的补充 2009-07-07 17时08分 你可以看看其他人的网页设计,网页制作,主要由排版、页面效果可与PS、Flas…

面对困难!软件安装经典故障

面对困难!软件安装经典故障

故障,软件安装,困难,经典,电脑软件,来源:时间:2005-6-25 BOIS设置 再简单的安装软件,一般都用电脑,但那在大多数人眼里很容易做,但也时不时给你上一课。安装时不能做,你怎么面对呢我收集的软件安装过程中的几个经典故障,希望能对您有所帮助!显示器…

Win8触摸反应慢Win8触摸反应慢(溶液

Win8触摸反应慢Win8触摸反应慢(溶液

溶液,电脑软件,问题: 新的计算机配备Win8系统,采用触摸屏,总体感觉是好的,它是一个触摸反应有点慢,没有智能手机的响应速度。 答案uff1a 为了提高Win8触摸响应速度的参考方法,首先,根据windows键(即与微软小窗口图标按钮的键盘),进入传统桌面,开始>…

喜马拉雅音频文件怎么转成MP3格式

喜马拉雅音频文件怎么转成MP3格式

喜马拉雅音频文件怎么转成MP3格式 音频格式转换攻略,游侠网,喜马拉雅,转换,音频格式,点击,下载,位置,重命名,喜马拉雅怎么转换音频格式?喜马拉雅是一款很火爆的声音app,那么这个app要怎么转换音频格式呢?小编已经帮大家整理好了相关内容,希望可以帮助…

对searchnav.exe-使用searchnav是

对searchnav.exe-使用searchnav是

电脑软件,searchnav,exe,点评:searchnav.exe是searchnav相关广告程序。该进程监视你的浏览行为,通过它去分析它的服务器进程也会弹出广告。 进程文件:searchnav或searchnav.exe 进程名称:searchnav间谍 过程类别:安全风险的过程 英文描述: sear…

如何使用USB盘安装Vista

如何使用USB盘安装Vista

安装,如何使用,电脑软件,USB,Vista,如何使用USB盘安装Vista 来源:作者:佚名日期:世界Vista 2007-08-24windows7故障 关键词:Vistawinxp安装 一般来说,安装Windows Vista,你需要使用Windows Vista安装光盘,但是,Windows Vista是一个伟大的操作系统…

设定是setpoint.exe-使用

设定是setpoint.exe-使用

电脑软件,setpoint,exe,评论:详细的介绍了setpoint.exe -设定过程 进程文件:设定值或setpoint.exe 过程名称:罗技设置事件管理器 过程类别:安全风险的过程 英文描述: setpoint.exe是与罗技设定的事件管理相关的过程,设定值,它也被称为对与错。 …

鸠摩搜书app下载 鸠摩搜书电子书官

鸠摩搜书app下载 鸠摩搜书电子书官

鸠摩搜书app下载 鸠摩搜书电子书官网网址,鸠摩搜书,搜索,仙侠,武侠,阅读,鸠摩,搜书,官网,鸠摩搜书APP是一款搜索功能强大的搜书软件,这里有热门畅销小说,还有都市言情、武侠仙侠、青春校园等多种类型小说,快来看看吧!鸠摩搜书浏览人数已经达到254915鸠…

搜狗浏览器无法保存登录密码(解决方

搜狗浏览器无法保存登录密码(解决方

密码,登录,搜狗浏览器,解决方案,电脑软件,问题: 经常使用搜狗高速浏览器,一旦登录到微博,浏览器提示是否保存密码,这一点本网站不再提示;现在,我想再次保存微博密码,节省每次输入密码的麻烦,但我不知道该怎么做 答案uff1a 让搜狗浏览器保存密码恢…

webcolct是webcolct.exe-过程

webcolct是webcolct.exe-过程

过程,电脑软件,webcolct,exe,综述:简要介绍了webcolct.exe - webcolct过程 进程文件:webcolct或webcolct.exe 进程名称:Webcolct 过程类别:安全风险的过程 英文描述: Webcolct.exe是罗技mouseware软件的一部分。过程控制 中文参考: Webcolct.ex…

光环助手怎么加速狂奔三国 狂奔三

光环助手怎么加速狂奔三国 狂奔三

光环助手怎么加速狂奔三国 狂奔三国加速办法介绍,加速,三国,光环助手,游侠网,悬浮窗,光环助手下载,助手,版本,环助手怎么加速狂奔三国?如果你们觉得现在玩狂奔三国觉得慢,打副本慢,就可以去下载个光环助手,可以帮你15倍加速,接下来就为大家介绍下狂奔三…

MySQL存储过程相互调用,并获得错误

MySQL存储过程相互调用,并获得错误

错误,存储过程,相互调用,代码示例,电脑软件,复制代码代码如下所示: MySQL > 分隔符$ $ MySQL > MySQL >创建程序myproc() 修改SQL >数据 ->开始 声明l_status -> varchar(20); -> 叫myproc1(l_status); l_status = 'duplicate entry'then ->如果 …