How to control the file download speed in PHP? To implement file download in a program written in PHP, sometimes it is necessary to limit the download speed. In fact, the PHP header function can be used to control the file download speed. Here are two PHP example codes for your reference.
1. How to control file download speed in PHP. Code: Copy code Code example:2. PHP download speed limit code php limit download speed implementation code: Copy code Code example: // local file that should be sent to the client $local_file = 'test-file.zip'; // filename that the user gets as default $download_file = 'your-download-name.zip'; // set the download rate limit (=> 20,5 kb/s) $download_rate = 20.5; if(file_exists($local_file) && is_file($local_file)) { // send headers header('Cache-control: private'); header('Content-Type: application/octet-stream'); header('Content-Length: '.filesize($local_file)); header('Content-Disposition: filename='.$download_file); //flush content flush(); // open file stream $file = fopen($local_file, "r"); while (!feof($file)) { // send the current file part to the browser print fread($file, round($download_rate * 1024)); //flush the content to the browser flush(); // sleep one second sleep(1); } // close file stream fclose($file); } else { die('Error: The file '.$local_file.' does not exist!'); } |