Revision: 62461
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at February 25, 2013 18:41 by apphp-snippets
Initial Code
<?php /* set here a limit of downloading rate (e.g. 10.20 Kb/s) */ $download_rate = 10.20; $download_file = 'download-file.zip'; $target_file = 'target-file.zip'; if(file_exists($download_file)){ /* headers */ header('Last-Modified: '.gmdate('D, d M Y H:i:s').' GMT'); header('Cache-control: private'); header('Content-Type: application/octet-stream'); header('Content-Length: '.filesize($download_file)); header('Content-Disposition: filename='.$target_file); /* flush content */ flush(); /* open file */ $fh = @fopen($download_file, 'r'); while(!feof($fh)){ /* send only current part of the file to browser */ print fread($fh, round($download_rate * 1024)); /* flush the content to the browser */ flush(); /* sleep for 1 sec */ sleep(1); } /* close file */ @fclose($fh); }else{ die('Fatal error: the '.$download_file.' file does not exist!'); } ?>
Initial URL
http://www.apphp.com/index.php?snippet=php-download-file-with-speed-limit
Initial Description
This snippet allows you set a limitation for download rate of the file that visitors download from your site.
Initial Title
Download File with a Speed Limit in PHP
Initial Tags
php, file, download
Initial Language
PHP