php文件下载
1 public function downLoad(){ 2 $torrent_name=$this->_get(‘torrent_name‘); 3 $fileName=‘./Public/Admin/download/‘.$torrent_name; 4 if(file_exists($fileName)){//下载 5 $fp=fopen($fileName,‘rb‘); 6 if(!$fp){ 7 header(‘HTTP/1.1 404 Not Found‘); 8 echo "Error: 404 Not Found.(server file path error)<!-- Padding --><!-- Padding --><!-- Padding --><!-- Padding --><!-- Padding --><!-- Padding --><!-- Padding --><!-- Padding --><!-- Padding --><!-- Padding --><!-- Padding --><!-- Padding --><!-- Padding --><!-- Padding -->"; 9 exit; 10 } 11 $encoded_filename = urlencode($fileName); 12 $encoded_filename = str_replace("+", "%20", $encoded_filename); 13 $fileSize=@filesize($fileName); 14 $fileName=basename($fileName); 15 header(‘HTTP/1.1 200 OK‘); 16 header( "Pragma: public" ); 17 header( "Expires: 0" ); 18 header("Content-type: application/octet-stream"); 19 header("Accept-Ranges: bytes"); 20 header("Accept-Length: ".$fileSize); 21 $ua = $_SERVER["HTTP_USER_AGENT"]; 22 if(preg_match("/MSIE/", $ua)) { 23 header(‘Content-Disposition: attachment; filename="‘ . $encoded_filename . ‘"‘); 24 }else if (preg_match("/Firefox/", $ua)) { 25 header(‘Content-Disposition: attachment; filename*="utf8\‘\‘‘ . $fileName . ‘"‘); 26 }else{ 27 header(‘Content-Disposition: attachment; filename="‘ . $fileName . ‘"‘); 28 } 29 while(!feof($fp)){ 30 $file_data=fread($fp,1024); 31 echo $file_data; 32 } 33 fclose($fp); 34 exit; 35 }else{ 36 $this->error(‘文件信息不存在!‘);exit; 37 } 38 }
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。