av手机免费在线观看,国产女人在线视频,国产xxxx免费,捆绑调教一二三区,97影院最新理论片,色之久久综合,国产精品日韩欧美一区二区三区

php語言

PHP實現(xiàn)HTTP斷點續(xù)傳的方法

時間:2025-02-16 01:14:14 php語言 我要投稿
  • 相關(guān)推薦

PHP實現(xiàn)HTTP斷點續(xù)傳的方法

  PHP是一種通用開源腳本語言。本文實例講述了PHP實現(xiàn)HTTP斷點續(xù)傳的方法。分享給大家供大家參考。

  具體實現(xiàn)方法如下:

  <?php

  /**

  * PHP-HTTP斷點續(xù)傳實現(xiàn)

  * @param string $path: 文件所在路徑

  * @param string $file: 文件名

  * @return void

  */

  function download($path,$file) {

  $real = $path.'/'.$file;

  if(!file_exists($real)) {

  return false;

  }

  $size = filesize($real);

  $size2 = $size-1;

  $range = 0;

  if(isset($_SERVER['HTTP_RANGE'])) {

  header('HTTP /1.1 206 Partial Content');

  $range = str_replace('=','-',$_SERVER['HTTP_RANGE']);

  $range = explode('-',$range);

  $range = trim($range[1]);

  header('Content-Length:'.$size);

  header('Content-Range: bytes '.$range.'-'.$size2.'/'.$size);

  } else {

  header('Content-Length:'.$size);

  header('Content-Range: bytes 0-'.$size2.'/'.$size);

  }

  header('Accenpt-Ranges: bytes');

  header('application/octet-stream');

  header("Cache-control: public");

  header("Pragma: public");

  //解決在IE中下載時中文亂碼問題

  $ua = $_SERVER['HTTP_USER_AGENT'];

  if(preg_match('/MSIE/',$ua)) {

  $ie_filename = str_replace('+','',urlencode($file));

  header('Content-Dispositon:attachment; filename='.$ie_filename);

  } else {

  header('Content-Dispositon:attachment; filename='.$file);

  }

  $fp = fopen($real,'rb+');

  fseek($fp,$range);

  while(!feof($fp)) {

  set_time_limit(0);

  print(fread($fp,1024));

  flush();

  ob_flush();

  }

  fclose($fp);

  }


【PHP實現(xiàn)HTTP斷點續(xù)傳的方法】相關(guān)文章:

PHP列表頁實現(xiàn)的方法05-24

PHP實現(xiàn)多線程的方法03-19

PHP實現(xiàn)多線程的方法08-02

PHP多線程的實現(xiàn)方法03-13

php頁面緩存實現(xiàn)方法07-20

PHP實現(xiàn)獲取域名的方法小結(jié)02-03

PHP實現(xiàn)無限級分類的方法07-14

php實現(xiàn)簡單文件下載的方法07-24

php實現(xiàn)偽靜態(tài)的方法實例11-30