文件的下載
文件的下載一般有兩種方式:1.通過超鏈接實現(xiàn)。地址為文件的地址 ,適用于瀏覽器解析不了的文件。像壓縮文件、腳本文件等。假如文件是圖片或者txt文檔,就會直接在瀏覽器中打開,一般不建議用這種方式實現(xiàn)下載功能。
2.通過流輸出,php使用header()函數(shù)發(fā)送網(wǎng)頁的頭部信息給瀏覽器,該函數(shù)接收一個頭信息的字符串作為參數(shù)。文件下載需要發(fā)送的頭信息包括以下三部分,通過調(diào)用三次header()函數(shù)完成。本文通過圖片下載為例講述實現(xiàn)過程。主要步驟有:1.獲取要下載的文件名(加上路徑);2.重設(shè)響應(yīng)類型;3.執(zhí)行下載的文件名;4.指定文件的大?。?.響應(yīng)內(nèi)容。代碼:
upload.php
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>多文件上傳</title></head><body><form action="doAction.php" method="post" enctype="multdownload.php<?php //1.獲取要下載圖片的文件名和路徑 $file = './uploads/2017-02-16/'.$_GET['name']; //2.重設(shè)響應(yīng)類型var_dump(getimagesize($file));exit; $info = getimagesize($file); header("content-type:".$info['mime']); //3.執(zhí)行下載的文件名,設(shè)定配置 header("content-disposition:attachment;filename=".$_GET['name']); //4.指定文件的大小 header("content-length:".filesize($file)); //5.讀取文件內(nèi)容 或者 readfile($file); echo file_get_contents($file);新聞熱點
疑難解答