使用 PHP 限制下载速度

原创
2016-06-13 09:42:23 547浏览

各位做运维的童鞋,会经常遇到一个问题,那就是有人再办公室下载东西,影响大家上网、办公。同样的问题,要是出现在了服务器上面,估计会让老板发火,事情发展的会更糟……今天特此想大家推荐几行关于PHP限制网速的代码,希望给大家一些帮助。

[代码] [PHP]代码

view source print? 01 // local file that should be send to the client 02 $local_file = 'test-file.zip'; 03 04 // filename that the user gets as default 05 $download_file = 'your-download-name.zip'; 06 07 // set the download rate limit (=> 20,5 kb/s) 08 $download_rate = 20.5; 09 10 if(file_exists($local_file) && is_file($local_file)) { 11 12 // send headers 13 header('Cache-control: private'); 14 header('Content-Type: application/octet-stream'); 15 header('Content-Length: '.filesize($local_file)); 16 header('Content-Disposition: filename='.$download_file); 17 18 // flush content 19 flush(); 20 21 // open file stream 22 $file = fopen($local_file, "r"); 23 24 while (!feof($file)) { 25 26 // send the current file part to the browser 27 print fread($file, round($download_rate * 1024)); 28 29 // flush the content to the browser 30 flush(); 31 32 // sleep one second 33 sleep(1); 34 } 35 36 // close file stream 37 fclose($file); 38 39 } 40 41 else { 42 die('Error: The file '.$local_file.' does not exist!'); 43 }

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。