当前位置 : 主页 > 网络编程 > PHP >

限制文件下载速度php代码

来源:互联网 收集:自由互联 发布时间:2021-07-03
如下代码实现php限制下载速度: ?php/* Source: http://www.apphp.com/index.php?snippet=php-download-file-with-speed-limit */ /* set here a limit of downloading rate (e.g. 10.20 Kb/s) */ $download_rate = 10.20; $download_file = 'do

如下代码实现php限制下载速度:

  <?php
/* Source: http://www.apphp.com/index.php?snippet=php-download-file-with-speed-limit */
    /* 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!');
    }
    ?>
网友评论