Home  >  Article  >  php教程  >  不是速度慢,而是我用PHP限制网速了!

不是速度慢,而是我用PHP限制网速了!

WBOY
WBOYOriginal
2016-06-21 08:50:50883browse

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



[代码] [PHP]代码

  // local file that should be send 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!');

  }



Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn