最新公告
  • 欢迎您光临波比源码,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入我们
  • php 文件下载方法

    文章也很简单我们只要用利用head发送头部信息就能实现把文件下载到本地了,有直接发送header信息也有把文件保存在服务器上再用header来发送哦,有需要的朋友参考下。

    用的是表头方式下载,代码如下:

    1. Header( "Content-type:application/octet-stream ");  
    2. Header( "Accept-Ranges:bytes ");  
    3. Header( "Accept-Length:".filesize($file_dir.$file_name));  
    4. Header( "Content-Disposition:attachment;filename= ".$file_name); 

    判断文件存在再下载代码如下:

    1. <?php 
    2.     if( isset( $_REQUEST["download"] ) ) 
    3.     { 
    4.             $tfile = $_REQUEST["download"]; 
    5.              
    6.             if (file_exists($tfile)) 
    7.             { 
    8.                 $downfilename=substr($tfile,strrpos($tfile"/")+1); 
    9.                //文件保存的名字可以修改为你需要的,可以和链接给的名字不一样 
    10.                 // Prompt the user to download the new torrent file. 
    11.                 header( "Content-type: application/octet-streamn" ); 
    12.                 header( "Content-disposition: attachment; filename=$downfilenamen" ); 
    13.                 header( "Content-transfer-encoding: binaryn"); 
    14.                 header( "Content-length: " . @filesize($tfile ) . "n" ); 
    15.                 // Send the torrent file 
    16.                 $fp = @fopen$tfile"r" ); 
    17.                 @fpassthru$fp ); 
    18.                 @fclose( $fp ); 
    19.              } 
    20.              
    21.             exit(); 
    22.      } 
    23. ?> 

    pdf文件下载,代码如下:

    1. <?php  
    2. $filename = $_SERVER['DOCUMENT_ROOT'] . "/path/to/file/my_file.pdf";  
    3. header("Cache-Control: public");  
    4. header("Content-Description: File Transfer");  
    5. header('Content-disposition: attachment; filename='.basename($filename));  
    6. header("Content-Type: application/pdf"); //pdf格式的 
    7. ?> 

    下面讲讲header中的Content-type,不同的下载文件,对应不同的content-type,下面是大全:

    1. 'ez' => 'application/andrew-inset'
    2. 'hqx' => 'application/mac-binhex40'
    3. 'cpt' => 'application/mac-compactpro'
    4. 'doc' => 'application/msword'
    5. 'bin' => 'application/octet-stream'
    6. 'dms' => 'application/octet-stream'
    7. 'lha' => 'application/octet-stream',  
    8. 'lzh' => 'application/octet-stream'
    9. 'exe' => 'application/octet-stream'
    10. 'class' => 'application/octet-stream'
    11. 'so' => 'application/octet-stream'
    12. 'dll' => 'application/octet-stream'
    13. 'oda' => 'application/oda'
    14. 'pdf' => 'application/pdf'
    15. 'ai' => 'application/postscript'
    16. 'eps' => 'application/postscript'
    17. 'ps' => 'application/postscript'
    18. 'smi' => 'application/smil'
    19. 'smil' => 'application/smil'
    20. 'mif' => 'application/vnd.mif'
    21. 'xls' => 'application/vnd.ms-excel'
    22. 'ppt' => 'application/vnd.ms-powerpoint'
    23. 'wbxml' => 'application/vnd.wap.wbxml'
    24. 'wmlc' => 'application/vnd.wap.wmlc'
    25. 'wmlsc' => 'application/vnd.wap.wmlscriptc'
    26. 'bcpio' => 'application/x-bcpio'
    27. 'vcd' => 'application/x-cdlink'
    28. 'pgn' => 'application/x-chess-pgn'
    29. 'cpio' => 'application/x-cpio'
    30. 'csh' => 'application/x-csh',  
    31. 'dcr' => 'application/x-director'
    32. 'dir' => 'application/x-director'
    33. 'dxr' => 'application/x-director'
    34. 'dvi' => 'application/x-dvi'
    35. 'spl' => 'application/x-futuresplash'
    36. 'gtar' => 'application/x-gtar'
    37. 'hdf' => 'application/x-hdf'
    38. 'js' => 'application/x-javascript'
    39. 'skp' => 'application/x-koan'
    40. 'skd' => 'application/x-koan'
    41. 'skt' => 'application/x-koan'
    42. 'skm' => 'application/x-koan'
    43. 'latex' => 'application/x-latex'
    44. 'nc' => 'application/x-netcdf'
    45. 'cdf' => 'application/x-netcdf'
    46. 'sh' => 'application/x-sh'
    47. 'shar' => 'application/x-shar'
    48. 'swf' => 'application/x-shockwave-flash'
    49. 'sit' => 'application/x-stuffit'
    50. 'sv4cpio' => 'application/x-sv4cpio'
    51. 'sv4crc' => 'application/x-sv4crc'
    52. 'tar' => 'application/x-tar'
    53. 'tcl' => 'application/x-tcl'
    54. 'tex' => 'application/x-tex',  
    55. 'texinfo' => 'application/x-texinfo'
    56. 'texi' => 'application/x-texinfo'
    57. 't' => 'application/x-troff'
    58. 'tr' => 'application/x-troff'
    59. 'roff' => 'application/x-troff'
    60. 'man' => 'application/x-troff-man'
    61. 'me' => 'application/x-troff-me'
    62. 'ms' => 'application/x-troff-ms'
    63. 'ustar' => 'application/x-ustar'
    64. 'src' => 'application/x-wais-source'
    65. 'xhtml' => 'application/xhtml+xml'
    66. 'xht' => 'application/xhtml+xml',  
    67. 'zip' => 'application/zip'
    68. 'au' => 'audio/basic'
    69. 'snd' => 'audio/basic'
    70. 'mid' => 'audio/midi'
    71. 'midi' => 'audio/midi'
    72. 'kar' => 'audio/midi'
    73. 'mpga' => 'audio/mpeg'
    74. 'mp2' => 'audio/mpeg'
    75. 'mp3' => 'audio/mpeg'
    76. 'aif' => 'audio/x-aiff'
    77. 'aiff' => 'audio/x-aiff'
    78. 'aifc' => 'audio/x-aiff'
    79. 'm3u' => 'audio/x-mpegurl'
    80. 'ram' => 'audio/x-pn-realaudio'
    81. 'rm' => 'audio/x-pn-realaudio'
    82. 'rpm' => 'audio/x-pn-realaudio-plugin'
    83. 'ra' => 'audio/x-realaudio'
    84. 'wav' => 'audio/x-wav'
    85. 'pdb' => 'chemical/x-pdb'
    86. 'xyz' => 'chemical/x-xyz'
    87. 'bmp' => 'image/bmp'
    88. 'gif' => 'image/gif'
    89. 'ief' => 'image/ief'
    90. 'jpeg' => 'image/jpeg'
    91. 'jpg' => 'image/jpeg'
    92. 'jpe' => 'image/jpeg',  
    93. 'png' => 'image/png'
    94. 'tiff' => 'image/tiff'
    95. 'tif' => 'image/tiff'
    96. 'djvu' => 'image/vnd.djvu'
    97. 'djv' => 'image/vnd.djvu'
    98. 'wbmp' => 'image/vnd.wap.wbmp'
    99. 'ras' => 'image/x-cmu-raster'
    100. 'pnm' => 'image/x-portable-anymap'
    101. 'pbm' => 'image/x-portable-bitmap'
    102. 'pgm' => 'image/x-portable-graymap'
    103. 'ppm' => 'image/x-portable-pixmap'
    104. 'rgb' => 'image/x-rgb',  
    105. 'xbm' => 'image/x-xbitmap'
    106. 'xpm' => 'image/x-xpixmap'
    107. 'xwd' => 'image/x-xwindowdump'
    108. 'igs' => 'model/iges'
    109. 'iges' => 'model/iges'
    110. 'msh' => 'model/mesh'
    111. 'mesh' => 'model/mesh'
    112. 'silo' => 'model/mesh'
    113. 'wrl' => 'model/vrml'
    114. 'vrml' => 'model/vrml'
    115. 'css' => 'text/css'
    116. 'html' => 'text/html'
    117. 'htm' => 'text/html',  
    118. 'asc' => 'text/plain'
    119. 'txt' => 'text/plain'
    120. 'rtx' => 'text/richtext'
    121. 'rtf' => 'text/rtf'
    122. 'sgml' => 'text/sgml'
    123. 'sgm' => 'text/sgml'
    124. 'tsv' => 'text/tab-separated-values'
    125. 'wml' => 'text/vnd.wap.wml'
    126. 'wmls' => 'text/vnd.wap.wmlscript'
    127. 'etx' => 'text/x-setext'
    128. 'xsl' => 'text/xml'
    129. 'xml' => 'text/xml'
    130. 'mpeg' => 'video/mpeg'
    131. 'mpg' => 'video/mpeg'
    132. 'mpe' => 'video/mpeg'
    133. 'qt' => 'video/quicktime'
    134. 'mov' => 'video/quicktime'
    135. 'mxu' => 'video/vnd.mpegurl'
    136. 'avi' => 'video/x-msvideo'
    137. 'movie' => 'video/x-sgi-movie'
    138. 'ice' => 'x-conference/x-cooltalk'
    波比源码 – 精品源码模版分享 | www.bobi11.com
    1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
    2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
    3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
    4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
    5. 如有链接无法下载、失效或广告,请联系管理员处理!
    6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
    7. 如遇到加密压缩包,请使用WINRAR解压,如遇到无法解压的请联系管理员!

    波比源码 » php 文件下载方法

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    波比源码
    一个高级程序员模板开发平台
    升级波友尊享更多特权立即升级