This article mainly introduces PHP related skills for file transfer. Interested friends can refer to it. I hope it will be helpful to everyone.
The details are as follows:
$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();//函数输出文件指针处的所有剩余数据。
This function reads the given file pointer from the current position to EOF and writes the result to the output buffer.
Summary: The above is the entire content of this article, I hope it will be helpful to everyone's study.
Related recommendations:
PHP obtains all attributes in a class based on reflection
PHP implements infinite classification Tree method
PDO data access abstraction layer in PHP
The above is the detailed content of PHP related skills for file transfer. For more information, please follow other related articles on the PHP Chinese website!