本篇文章主要介紹php針對檔案傳輸的相關技巧,感興趣的朋友參考下,希望對大家有所協助。
具體如下:
$fname = 'http://XXXX/MMLDZG.mp3';$fp = fopen($fname,'rb');$fsize = filesize($fname);if (isset($_SERVER['HTTP_RANGE']) && ($_SERVER['HTTP_RANGE'] != "") && preg_match("/^bytes=([0-9]+)-$/i", $_SERVER['HTTP_RANGE'], $match) && ($match[1] < $fsize)) { $start = $match[1]; } else { $start = 0; } @header("Cache-control: public"); @header("Pragma: public"); if ($star--> 0) { fseek($fp, $start); Header("HTTP/1.1 206 Partial Content"); Header("Content-Length: " . ($fsize - $start)); Header("Content-Ranges: bytes" . $start . "-" . ($fsize - 1) . "/" . $fsize);} else { header("Content-Length: $fsize"); Header("Accept-Ranges: bytes");}@header("Content-Type: application/octet-stream");@header("Content-Disposition: attachment;filename=mmdld.mp3");fpassthru($fp);fpassthru();//函數輸出檔案指標處的所有剩餘資料。
該函數將給定的檔案指標從當前的位置讀取到 EOF,並把結果寫到輸出緩衝區。
總結:以上就是本篇文的全部內容,希望能對大家的學習有所協助。
相關推薦:
PHP基於反射擷取一個類中所有屬性
PHP實現無限極分類樹的方法
PHP中PDO資料訪問抽象層