- <?php
- set_time_limit(0); // 大文件在读取内容未结束时会被超时处理, 导致下载文件不全.
- $fpath = 'book.zip';
- $file_pathinfo = pathinfo($fpath);
- $file_name = $file_pathinfo['basename'];
- $file_extension = $file_pathinfo['extension'];
- $handle = fopen($fpath,"rb");
- if (FALSE === $handle)
- exit("Failed to open the file");
- $filesize = filesize($fpath);
- header("Content-type:video/mpeg4");// 更具不同的文件类型设置 header 输出类型
- header("Accept-Ranges:bytes");
- header("Accept-Length:".$filesize);
- header("Content-Disposition: attachment; filename=".$file_name);
- $contents = '';
- while (!feof($handle)) {
- $contents = fread($handle, 8192);
- echo $contents;
- @ob_flush(); // 把数据从 PHP 的缓冲中释放出来
- flush(); // 把被释放出来的数据发送到浏览器
- }
- fclose($handle);
- exit;
来源: http://www.bubuko.com/infodetail-2651817.html