Rumah  >  Artikel  >  php教程  >  下载文件--针对大多数的文件类型

下载文件--针对大多数的文件类型

PHP中文网
PHP中文网asal
2016-05-25 16:58:531142semak imbas

下载文件--针对大多数的文件类型

function forceDownLoad($filename='' ,$data=''){
     if($filename==''  OR  $data==''){  return false; }
     if(FLASE === strpos($filename,'.')){
        return false;
     }
     $x = explod('.',$filename);
     $extension = end($x);
     $mimes = array('hqx'=>'application/mac-binhex40','cpt'=>'application/mac-compactpro','csv'=>'text/x-comma-separated-values','text/csv','application/csv','application/excel','application/vnd.msexcel','bin'=>'application/macbinary','dms'=>'application/octet-stream','lha'=>'application/octet-stream','lzh'=>'application/octect-stream','exe'=>array('application/octet-stream'));

if(!isset($mimes[$extension])){  $mime = 'application/octet-stream'; }
else{ $mime = (is_array($mimes[$extension]); ))?$mimes[$extension][0]: $mimes[$extension]; }

header('Content-type:"'. $mime.'"');
$tmpName = $filename;
$filename = '"''.urlencode($tmpName)."'; ////IE 中文名支持
if(strstr(strtolower($_SERVER['HTTP_USER_AGER']),'firefox') !=false){   $filename='" .$tmpName."';}  /////Firefox 中文支持
if(strstr(strtolower($_SERVER['HTTP_USER_AGER']),'chrome') !=false){   $filename='" .$tmpName."';}  /////Chrome 中文支持

header('Content-Disposition:attachment; filename='. $filename);
header('Expires:0');
header('Cache-Control: must-revalidate,post-check=0,pre-check=0');
header('Content-Transfer-Encoding:binary');
header('Pragma:no-cache');
header('Content-Length:'.strlen($data));

exit($data);
}

                   

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn