dfszhtt 2014-01-07 12:21 采纳率: 0%
浏览 4120

请教:PHP readfile实现下载的问题?

请各位大牛给我诊断一下,以下问题可能是那块错了?

如下采用readfile实现下载的功能,在附件较大时失败;我做过以下尝试:
1. 下载的文件较小时是正常的;
2. 当文件大于128多兆后,则出错;PHP.INI中配置不同表现不同:
a. memory_limit = 128M时,获取的文件大小是0字节,文件是空;
b. memory_limit = -1时,提示网站连接有问题;

其它配置:
max_execution_time = 0
default_socket_timeout = -1

总体感觉缓存不够或什么超时了?请大牛指点一二,谢谢诶

if(file_exists(ROOT_PATH."$url"))
{

$filetype=substr(strrchr($url,'.'),1);
ob_end_clean();
header('Last-Modified: '.gmdate('D, d M Y H:i:s',time()).' GMT');
header('Pragma: no-cache');
header('Content-Encoding: none');
header('Content-Disposition: attachment; filename='."$true_name.$filetype");
header('Content-type: '.$filetype);
header('Content-Length: '.filesize(ROOT_PATH."$url"));
readfile(ROOT_PATH."$url");
exit;
}

  • 写回答

1条回答 默认 最新

  • dfszhtt 2014-01-07 12:35
    关注

    难道是最大只支持128M?若是这样,那超过128M的如何实现?

    评论

报告相同问题?

悬赏问题

  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料