ホームページ >php教程 >php手册 >速度が遅いのではなく、PHP を使用してインターネットの速度を制限しているのです。

速度が遅いのではなく、PHP を使用してインターネットの速度を制限しているのです。

WBOY
WBOYオリジナル
2016-06-21 08:50:501142ブラウズ

運用、保守、開発に従事している人は皆、よく問題に遭遇することがあります。つまり、オフィスで誰かが何かをダウンロードすると、当然ネットワーク速度が遅くなり、全員のインターネット アクセスや仕事に影響を及ぼします。同じ問題がサーバーで発生した場合、おそらく上司を怒らせ、状況はさらに悪化するでしょう...今日は、ネットワーク速度を制限する PHP に関するコードを数行お勧めします。少しでもお役に立てれば幸いです。



[コード] [PHP]コード

  // local file that should be send to the client
// クライアントに送信するローカル ファイル

  $local_file = 'test-file.zip';
テーブル>

$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)) {
$download_file = 'ダウンロード名.zip';

  // send headers
テーブル>

   header('Cache-control: private');
// ダウンロード速度制限を設定します (=> 20,5 kb/s)

  header('Content-Type: application/octet-stream');
テーブル>

  header('Content-Length: '.filesize($local_file));
$download_rate = 20.5;

  header('Content-Disposition: filename='.$download_file);
テーブル>

if(file_exists($local_file) && is_file($local_file)) {

  // flush content
テーブル>

  flush();
// ヘッダーを送信

  // open file stream
テーブル>

  $file = fopen($local_file, "r");
header('キャッシュ制御: プライベート');

   while (!feof($file)) {
テーブル> header('Content-Type: application/octet-stream'); テーブル> header('Content-Length: '.filesize($local_file)); テーブル> header('Content-Disposition: filename='.$download_file); テーブル> // コンテンツをフラッシュします テーブル> フラッシュ(); テーブル> // ファイルストリームを開きます テーブル> $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!');

  }



声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。