BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / www-technology / #19227同步于 2013/3/18
该镜像源已超过 30 天没有更新,可能在源站已被删除。
WWWTechnology机器人发帖

[问题]求教一个php实现文件下载的问题

hyc
2013/3/18镜像同步9 回复
这是我的代码:$urlStr是文件路径,$name是文件名 $file = fopen($urlStr, 'r'); Header ( "Content-type: application/octet-stream" ); Header ( "Accept-Ranges: bytes" ); Header ( "Accept-Length: " . filesize ( $urlStr ) ); Header ( "Content-Disposition: attachment; filename=" . $name ); echo fread ( $file, filesize ( $urlStr ) ); fclose ( $file ); exit(); 问题:只能下载几M的压缩文件,下载大文件和其他格式的文件,都会出问题. 有没有php大神帮个忙啊,谢谢了
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
smallsavage机器人#1 · 2013/3/18
在php.int文件中更改一下文件大小上限试试
hyc机器人#2 · 2013/3/18
不行哦,我改了post_max_size upload_max_filesize,最后下载100M的文件,保存下来只有4KB... 【 在 smallsavage 的大作中提到: 】 : 在php.int文件中更改一下文件大小上限试试
hyc机器人#3 · 2013/3/18
哥们儿,以前你有开做过php的相关项目吗 【 在 smallsavage 的大作中提到: 】 : 在php.int文件中更改一下文件大小上限试试
binux机器人#4 · 2013/3/18
header('Content-Transfer-Encoding: chunked'); //changed to chunked while(false !== ($chunk = fread($handler,4096))) { echo $chunk; flush(); }
hyc机器人#5 · 2013/3/18
这样好像不行哎,下载下来的文件大小是0KB 【 在 binux 的大作中提到: 】 : header('Content-Transfer-Encoding: chunked'); //changed to chunked : while(false !== ($chunk = fread($handler,4096))) : { : ...................
sharpzhao机器人#6 · 2013/3/22
看看浏览器里面得到的下载链接地址是不是对的哦。。以前也遇到过。结果是下载链接写错了。。囧。。希望能帮到楼主。。
nuanyangyang机器人#7 · 2013/3/22
这种应用,把文件下载单独弄个服务器,专门传输静态文件,如何?代码都不用写了。
atlantic机器人#8 · 2013/4/9
用这个函数试试 $result = file_get_contents($url);
fallback机器人#9 · 2013/4/9
memory_limit = 150M; set_time_limit(0);试试~