介绍
今天就跟大家聊聊有关在php中使用readfile下载大文件失败如何解决,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
具体如下:
大文件有200多米,只下载了200 k就提示下载完成,且不报的错。
原因是php内存有限制,需要改为按块下载,就是<强>把大文件切块后逐块下载强>。
if (file_exists(文件)美元) { if 才能;(假!==,($ handler =, fopen(文件,美元,& # 39;" # 39;))) {才能 ,,,头(& # 39;内容描述:,File 转移# 39;); ,,,头(& # 39;- type:应用程序/八进制# 39;); ,,,头(& # 39;附加项:,附件;,文件名=& # 39;.basename(文件)美元); ,,,头(& # 39;Content-Transfer-Encoding:,分块# 39;);//changed 用分块 ,,,头(& # 39;到期:0 & # 39;); ,,,头(& # 39;cache - control: must-revalidate,,任职考核=0,,提前预支了=0 & # 39;); ,,,头(& # 39;杂注:,公共# 39;); ,,,//头(& # 39;内容长度:,& # 39;,只文件大小(文件)美元);//删除 ,,,//Send 从而content 块拷贝 ,,,,(false !==, ($ chunk =,从文件中读(处理器,4096美元))) ,,,{ ,,,,,echo 块美元; ,,,} ,,} 退出才能; } echo “& lt; h2> Content error & lt; p>从而file does not 存在! & lt;/p>“
看完上述内容,你们对在php中使用readfile下载大文件失败如何解决有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注行业资讯频道,感谢大家的支持。