drew

Words on your display.

Archive for the ‘coding’ tag

Serving a large file through PHP without hitting memory_limit

without comments

Ran into a little problem hitting the memory limit for PHP when serving 100MB+ files through a script like:

$file = @fopen($filename,"r");

if ($file)
{
while(!feof($file))
{
    print(fread($file, 1024*4));
    flush();
    ob_flush();
}
@fclose($file);
}

Found that you need to call ob_flush() as well as flush() since flush() has no effect on the buffering scheme of your web server.

Just thought I’d throw that out there for anyone else.

Written by Drew

September 10th, 2008 at 11:44 pm