本文实例讲述了php readfile下载大文件失败的解决方法。分享给大家供大家参考,具体如下:

大文件有200多M,只下载了200K就提示下载完成,且不报错。

原因是PHP内存有限制,需要改为按块下载,就是把大文件切块后逐块下载。

if (file_exists($file))

{

if (FALSE!== ($handler = fopen($file, 'r')))

{

header('Content-Description: File Transfer');

header('Content-Type: application/octet-stream');

header('Content-Disposition: attachment; filename='.basename($file));

header('Content-Transfer-Encoding: chunked'); //changed to chunked

header('Expires: 0');

header('Cache-Control: must-revalidate, post-check=0, pre-check=0');

header('Pragma: public');

//header('Content-Length: ' . filesize($file)); //Remove

//Send the content in chunks

while(false !== ($chunk = fread($handler,4096)))

{

echo $chunk;

}

}

exit;

}

echo "

Content error

The file does not exist!

";

更多关于PHP相关内容感兴趣的读者可查看本站专题:《php文件操作总结》、《PHP网络编程技巧总结》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

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

php 7.0 readfile_php readfile下载大文件失败的解决方法相关推荐

  1. php readfile 下载大文件失败

    大文件有200多M,只下载了200K就提示下载完成,且不报错. 原因是PHP内存有限制,需要改为按块下载,就是把大文件切块后逐块下载. if (file_exists($file)) {if (FAL ...

  2. Linux系统盘爆满根目录100%,又找不到占空间的大文件 原因与解决方法

    最近一位朋友他的Linux(Centos7)根目录一直100%,也就是系统文件磁盘已经爆满了.虽然通过:df -h, du -sh * 等指令配合使用,发现当前系统任然存在大量可以使用的空间(6.5G ...

  3. 使用mysql workbench导入csv文件失败的解决方法

    使用mysql workbench导入csv文件失败的解决方法 解决方法: 1.用记事本打开csv文件,另存的时候,文件名后缀为.csv,保存类型为文本文档,编码方式utf-8. 2.打开workbe ...

  4. mac在App Store下载更新软件失败的解决方法

    mac在App Store下载更新软件失败的解决方法 | 浏览:1435 | 更新: 2014-04-04 12:51 mac电脑无论是macbook还是imac在正规的软件下载地方就是 App St ...

  5. scrapy下载大文件失败问题

    利用scrapy下载大量大尺寸图片及视频时有时会报错,显示放弃重试,用户连接时间超过180s导致失去连接 如下 Gave up retrying <GET url> (failed 3 t ...

  6. Nginx下载大文件失败

    原因分析: nginx代理nginx时,前端用户请求下载文件, nginx代理会先从后端nginx拿到文件并缓存到本地,然后响应给客户端,其中与proxy buffer相关的配置项如下: proxy_ ...

  7. linux下载大文件失败,Linux下FTP/SFTP传输大文件总是失败的处理办法

    海外服务器,一般延迟都比较高.如果不是China Telecom/China Unicom路由直连,延迟更加的不稳定,甚至长连接会经常闪断.国内跨运营商服务器,没有BGP网关,也同样会发生这样的情况, ...

  8. VC6.0下打开文件失败的解决方法

    虽说VC6已经算很古老了,但是他简单使用的环境还是让现在很多人还在使用.但是,在我们刚安装好使用的时候,经常会遇到这样的问题,VC6中打开文件或打开工程会报内存错误的问题.这个问题足以让VC下编程的初 ...

  9. 【Android】Android SDK下载和更新失败的解决方法!!!

    最近刚换了电脑,开始搭建Android开发环境的时候,下载SDK总是会出现如下错误: [java] view plaincopy Failed to fetch URL http://dl-ssl.g ...

最新文章

  1. SQL Server中灾难时备份结尾日志(Tail of log)的两种方法
  2. linux 自定义目录,linux – cron命令的自定义目录
  3. java json格式的转换和读取
  4. 159. Leetcode 122. 买卖股票的最佳时机 II (贪心算法-股票题目)
  5. 一步步解析Attention is All You Need
  6. CentOS 快速安装pip
  7. 猎豹浏览器网页声音怎么关闭 2步关闭网页声音
  8. PLSQL创建用户及权限分配
  9. Consider defining a bean named 'entityManagerFactory' in your configuration解决办法
  10. Leetcode刷题之旅1
  11. 压电式加速计matlab,低频压电加速度传感器的噪声特性及信号处理方法研究
  12. 时光 php,ctphp-php教程-时光划过那刹那-PHP教程--创业的风,吹向了年轻之长藤个人博客网站...
  13. 城市区号+mysql_中国城市区号脚本-mysql
  14. 小米手机如何更换铃声和微信提示音
  15. BERT模型的结构,特点和实践
  16. 通过Bellman算子理解动态规划
  17. Linux 常用命令 一顿操作猛如虎
  18. sublime前端编辑器入门与个人使用经验分享
  19. 西安交大梁力上机实验第三章12,从0到180度每隔5度输出该角度的正弦值余弦值
  20. DHT11温湿度LCD显示

热门文章

  1. DB2进行压缩的最佳实践
  2. 工程伦理--6.3 风险评估的道德原则
  3. oracle高效设计阅读心得体会_Oracle高效设计
  4. 兼职专车司机选择多,滴滴专车(快车)司机注册
  5. 墨尔本python培训班_墨尔本大学商业专业
  6. multiple属性的使用
  7. vscode报错 [Code安装似乎损坏。请重新安装]
  8. 智能叮当值不值得长期做?
  9. seaborn---调色板
  10. C++期末考试1:求圆柱体体积(完整代码含测试)