• 技术文章 >后端开发 >php教程

    PHP 文件上载

    2016-06-13 13:05:19原创207
    PHP 文件下载

    // $file = "/folder/filename.ext";
    function force_download($file) {
    ??? // 截取文件扩展名
    ??? $ext = explode(".", $file);
    ??? switch($ext[sizeof($ext)-1]) {
    ??????? case 'jar': $mime = "application/java-archive"; break;
    ??????? case 'zip': $mime = "application/zip"; break;
    ??????? case 'jpeg': $mime = "image/jpeg"; break;
    ??????? case 'jpg': $mime = "image/jpg"; break;
    ??????? case 'jad': $mime = "text/vnd.sun.j2me.app-descriptor"; break;
    ??????? case "gif": $mime = "image/gif"; break;
    ??????? case "png": $mime = "image/png"; break;
    ??????? case "pdf": $mime = "application/pdf"; break;
    ??????? case "txt": $mime = "text/plain"; break;
    ??????? case "doc": $mime = "application/msword"; break;
    ??????? case "ppt": $mime = "application/vnd.ms-powerpoint"; break;
    ??????? case "wbmp": $mime = "image/vnd.wap.wbmp"; break;
    ??????? case "wmlc": $mime = "application/vnd.wap.wmlc"; break;
    ??????? case "mp4s": $mime = "application/mp4"; break;
    ??????? case "ogg": $mime = "application/ogg"; break;
    ??????? case "pls": $mime = "application/pls+xml"; break;
    ??????? case "asf": $mime = "application/vnd.ms-asf"; break;
    ??????? case "swf": $mime = "application/x-shockwave-flash"; break;
    ??????? case "mp4": $mime = "video/mp4"; break;
    ??????? case "m4a": $mime = "audio/mp4"; break;
    ??????? case "m4p": $mime = "audio/mp4"; break;
    ??????? case "mp4a": $mime = "audio/mp4"; break;
    ??????? case "mp3": $mime = "audio/mpeg"; break;
    ??????? case "m3a": $mime = "audio/mpeg"; break;
    ??????? case "m2a": $mime = "audio/mpeg"; break;
    ??????? case "mp2a": $mime = "audio/mpeg"; break;
    ??????? case "mp2": $mime = "audio/mpeg"; break;
    ??????? case "mpga": $mime = "audio/mpeg"; break;
    ??????? case "wav": $mime = "audio/wav"; break;
    ??????? case "m3u": $mime = "audio/x-mpegurl"; break;
    ??????? case "bmp": $mime = "image/bmp"; break;
    ??????? case "ico": $mime = "image/x-icon"; break;
    ??????? case "3gp": $mime = "video/3gpp"; break;
    ??????? case "3g2": $mime = "video/3gpp2"; break;
    ??????? case "mp4v": $mime = "video/mp4"; break;
    ??????? case "mpg4": $mime = "video/mp4"; break;
    ??????? case "m2v": $mime = "video/mpeg"; break;
    ??????? case "m1v": $mime = "video/mpeg"; break;
    ??????? case "mpe": $mime = "video/mpeg"; break;
    ??????? case "mpeg": $mime = "video/mpeg"; break;
    ??????? case "mpg": $mime = "video/mpeg"; break;
    ??????? case "mov": $mime = "video/quicktime"; break;
    ??????? case "qt": $mime = "video/quicktime"; break;
    ??????? case "avi": $mime = "video/x-msvideo"; break;
    ??????? case "midi": $mime = "audio/midi"; break;
    ??????? case "mid": $mime = "audio/mid"; break;
    ??????? case "amr": $mime = "audio/amr"; break;
    ??????? default: $mime = "application/force-download";
    ??? }
    ??? header('Content-Description: File Transfer');
    ??? header('Content-Type: '.$mime);
    ??? header('Content-Disposition: attachment; filename='.basename($file));
    ??? header('Content-Transfer-Encoding: binary');
    ??? header('Expires: 0');
    ??? header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
    ??? header('Pragma: public');
    ??? header('Content-Length: '.filesize($file));
    ??? ob_clean();
    ??? flush();
    ??? readfile($file);
    }?

    声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    上一篇: 40条优化php代码的小范例 下一篇: php下传图片
    大前端线上培训班

    相关文章推荐

    • 分享一份PHP开发内部规范• php session有关问题 • thinkphp检查下传文件时是否已存在 • PHP学习系列5

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网