0

我的系统内存是128M,设置memory_limit为128M,可以用php fread下载150M以上的文件吗?我试过不行!可以下载只有110M左右!

谢谢大家,

    $sent = 0;
    $blocksize=(2 << 20);

    $fp = fopen($download_path, "rb");
    while($sent < $size){
        echo fread($fp, $blocksize);
        $sent += $blocksize;
    }
    exit(0);

我用这种方式,那我该怎么做呢?

4

1 回答 1

2

是的,如果您不尝试将它们全部读入内存。如果您的要求允许,您应该分块读取文件并一次处理一个块。这通常是一个好主意,不管你在做什么,也不管你有多少内存。

于 2013-02-26T09:24:24.930 回答