php控制文件下载速度的方法

yipeiwu_com6年前PHP代码库

本文实例讲述了php控制文件下载速度的方法。分享给大家供大家参考。具体实现方法如下:

<?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!');
 }
?>

希望本文所述对大家的php程序设计有所帮助。

相关文章

PHP内核探索:变量概述

现代编程语言中的基本元素主要有:变量,流程控制接口,函数等等。我能否不使用变量来编写程序呢? 这显然是可以的,例如: 复制代码 代码如下:<?php  &nbs...

浅析PHP绘图技术

1、图片格式:目前网站开发常见的图片格式有gif,jpg/jpeg,png .....区别:•gif 图片压缩率高,但是只能显示256色,可能造成颜色的丢失,可以显示动画&#...

php判断文件上传类型及过滤不安全数据的方法

本文实例讲述了php判断文件上传类型及过滤不安全数据的方法。分享给大家供大家参考。具体如下: 禁止上传除图片文件以外的文件,提示,不要获取文件扩展名来判断类型,这样是最不安全的,我们用$...

分享一个漂亮的php验证码类

本文实例为大家分享了一个漂亮的php验证码类,供大家参考,具体内容如下 //验证码类 class ValidateCode { private $charset = 'abcdef...

PHP 页面编码声明方法详解(header或meta)

php的header来定义一个php页面为utf编码或GBK编码 php页面为utf编码 header("Content-type: text/html; charset=utf-8")...