php利用header函数下载各种文件
本文实例为大家分享了phpheader函数下载文件实现代码,供大家参考,具体内容如下
http://www.php.net/manual/en/function.readfile.php
<?php /** *下载文件 *header函数 * */ dl_file($_GET['filename']); functiondl_file($file) { $file=".//images//".$file; //First,seeifthefileexists if(!is_file($file)) { die("<b>404Filenotfound!</b>"); } //Gatherreleventinfoaboutfile $len=filesize($file); $filename=basename($file); $file_extension=strtolower(substr(strrchr($filename,"."),1)); //ThiswillsettheContent-Typetotheappropriatesettingforthefile switch($file_extension) { case"pdf": $ctype="application/pdf"; break; case"exe": $ctype="application/octet-stream"; break; case"zip": $ctype="application/zip"; break; case"doc": $ctype="application/msword"; break; case"xls": $ctype="application/vnd.ms-excel"; break; case"ppt": $ctype="application/vnd.ms-powerpoint"; break; case"gif": $ctype="image/gif"; break; case"png": $ctype="image/png"; break; case"jpeg": case"jpg": $ctype="image/jpg"; break; case"mp3": $ctype="audio/mpeg"; break; case"wav": $ctype="audio/x-wav"; break; case"mpeg": case"mpg": case"mpe": $ctype="video/mpeg"; break; case"mov": $ctype="video/quicktime"; break; case"avi": $ctype="video/x-msvideo"; break; //Thefollowingareforextensionsthatshouldn'tbedownloaded //(sensitivestuff,likephpfiles) case"php": case"htm": case"html": case"txt": die("<b>Cannotbeusedfor".$file_extension."files!</b>"); break; default: $ctype="application/force-download"; } $file_temp=fopen($file,"r"); //Beginwritingheaders header("Pragma:public"); header("Expires:0"); header("Cache-Control:must-revalidate,post-check=0,pre-check=0"); header("Cache-Control:public"); header("Content-Description:FileTransfer"); //Usetheswitch-generatedContent-Type header("Content-Type:$ctype"); //Forcethedownload $header="Content-Disposition:attachment;filename=".$filename.";"; header($header); header("Content-Transfer-Encoding:binary"); header("Content-Length:".$len); //@readfile($file); echofread($file_temp,filesize($file)); fclose($file_temp); exit(); } ?>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。