1.開啓fileinfo擴展php
2.fileinfo函數服務器
finfo_open 建立一個fileinfo資源函數
finfo_close 關閉fileinfo資源spa
finfo_file 返回一個文件的信息code
FILEINFO_MIME_TYPE 返回mime類型blog
FILEINFO_MIME_TYPE 返回文件mime類型資源
filesize 返回文件大小it
3.header函數io
header(‘Content-type:’.MIME類型); 發送指定的文件MIME類型的頭信息class
header(‘Content-Disposition:attachement;filename=文件名稱’); 指定下載文件的描述
header(‘Content-Length:文件大小’); 指定下載文件的大小
readfile(); 讀取文件內容至輸出緩衝區
<?php //服務器端提供的可下載文件 $filename = 'C:\Users\Public\Desktop\desktop.ini'; //經過函數與系統定義的常量(FILEINFO_MIME_TYPE)獲取到文件類型 $mimeType = finfo_open(FILEINFO_MIME_TYPE); //文件的主要信息(文件名 文件類型) $fileinfo = finfo_file($mimeType,$filename); finfo_close($mimeType); //發送指定的文件MIME類型的頭部信息 header('Content-type:'.$fileinfo); //指定下載文件的描述 .basename()用於返回文件的名稱 header('Content-Disposition:attachement;filename='.basename($filename)); //指定文件的大小 header('Content-Length:'.filesize($filename)); //讀取文件內容至輸出緩衝區,即向客戶端返回這個文件 readfile($filename); ?>