導航:首頁 > 編程語言 > php實現下載功能

php實現下載功能

發布時間:2022-07-20 05:33:12

php如何實現批量下載功能

原理很簡單,通過一個含有圖片地址的數組循環,然後使用PHP的file_get_contents函數取得圖片,在使用file_put_contents函數把圖片保存下來。就這樣簡單,希望能幫到你.順便提供一組PHP批量下載圖片文件代碼供你參考:set_time_limit(0);//設置PHP超時時間$imagesURLArray
=
array_unique($imagesURLArray
);foreach($imagesURLArray
as
$imagesURL)
{
echo
$imagesURL;
echo
"

Ⅱ 怎樣才能用PHP語言實現網頁中的下載文件功能

<?php
/*
$file------文件名
$_SERVER['DOCUMENT_ROOT']-----伺服器跟目標
down------自定義下載文件的文件夾
獲取文件在文件夾裡面的位置
必須是絕對路徑
Content-Type:application/force-download強制瀏覽器下載
*/
$file="xxxx.rar";

$file=$_SERVER['DOCUMENT_ROOT']."/down/".$file;


if(is_file($file)){
header("Content-Type:application/force-download");
header("Content-type:application/octet-stream");
header("Content-Disposition:attachment;filename=".basename($file));
readfile($file);
exit;
}else{
echo"文件不存在!";
exit;
}
?>

Ⅲ 如何實現php點擊時下載txt文件功能 詳細

php 點擊下載txt 文件 由於現在的瀏覽器已經可以識別格式為txt 的文檔格式,所以如果只是給txt 文檔做一 個文字鏈接的話,可能只是打開一個新窗口顯示txt 文件的內容,並不能實現點擊下載的目 的。We have to do something else. 當然這個問題的解決辦法也可以是你將你的txt 文件改名為瀏覽器不認識的文件,比如 rar,這樣的話點擊,瀏覽器不認識就只好讓用戶下載了。 下面這個文件就是通過設置header 設置文檔的格式來實現點擊下載的目的,將上個頁面傳 遞過來的文件點擊可以下載。 接著第二個header函數設置了要下載的文件,注意這里filename是不包含路徑的文件名, 所以用basename 過濾掉路徑名。這個 filename 的值將來就是點擊下載後彈出對話框裡面的 文件名,如果帶路徑的話,彈出對話框的文件名就是未知的,這個要注意,我就犯了這個錯 誤,後來憑 經驗自己改了,居然對了。 最後就是 readfile,將文件流輸出到瀏覽器,這樣就實現了 txt 文件的下載,其他類型的類似。

Ⅳ 菜鳥求助!php里如何實現下載功能

用header來實現
給你一個示例代碼。無論什麼功能,分三步:
1.格式
2.設置Content-Disposition屬性
3.讀文件,完成功能
<?php
// 下載的文件是pdf格式
header('Content-type: application/pdf');

//重命名為downloaded.pdf
header('Content-Disposition: attachment; filename="downloaded.pdf"');

// 源文件為original.pdf
readfile('original.pdf');
?>

Ⅳ PHP怎麼樣實現文件夾的整體下載

列出這個文件里的目錄結構及文件。再一個一個下下來。

Ⅵ PHP實現文件下載

2種方法

1直接做個超鏈接,地址為文件的地址

<ahref="文件地址">下載</a>


2流輸出

<?php
$file=fopen('文件地址',"r");
header("Content-Type:application/octet-stream");
header("Accept-Ranges:bytes");
header("Accept-Length:".filesize('文件地址'));
header("Content-Disposition:attachment;filename=文件名稱");
echofread($file,filesize('文件地址'));
fclose($file);
?>

推薦第二種


因為第一種方法只能下載瀏覽器不能解析的文件,比如rar啊,腳本文件之類。如果文件是圖片或者txt文檔,就會直接在瀏覽器中打開


而第二種方法是直接輸出的文件流,不存在上述問題

Ⅶ php怎麼實現下載功能

你要下載什麼?一般的下載用html里的a標簽就可以
比如:<a href="a.rar">下載</a>,單擊下載就可以下載a.rar了

Ⅷ 如何實現php整站下載

現在網上的整站下載器只能下載html,css,js,圖片,php代碼和資料庫只能進到伺服器里才能看到,所以想要下載出後台文件基本是不可能的。

IIS7整站下載器可以有下述功能:1、可多站同時下載、多站同時扒
2、可單頁扒
3、可自定義, 重寫JS\圖片\CSS路徑
4、執行全站下載後,會下載到本程序根目錄下的html文件夾下。
5、全站替換,根據關鍵詞替換。N個(多個)關鍵詞替換。
6、多線程下載
7、自動補齊404不存在的鏈接頁面(下載大站的時候需要)
8、插入自定義的JS(全站插入)
9、整站下載
10、單頁下載

Ⅸ 如何實現php點擊時下載txt文件功能

由於現在的瀏覽器已經可以識別格式為txt的文檔格式,所以如果只是給txt文檔做一個文字鏈接的話,可能只是打開一個新窗口顯示txt文件的內容,並不能實現點擊下載的目的。We have to do something else. 當然這個問題的解決辦法也可以是你將你的txt文件改名為瀏覽器不認識的文件,比如rar,這樣的話點擊,瀏覽器不認識就只好讓用戶下載了。 下面這個文件就是通過設置header設置文檔的格式來實現點擊下載的目的,將上個頁面傳遞過來的文件點擊可以下載。 <?php$filename="/somepath/". $_GET['file']." .txt";//要下載的文件名header("Content-Type:application/force-download");header("Content-Disposition:attachment;filename=". 接著第二個header函數設置了要下載的文件,注意這里filename是不包含路徑的文件名,所以用basename過濾掉路徑名。這個 filename的值將來就是點擊下載後彈出對話框裡面的文件名,如果帶路徑的話,彈出對話框的文件名就是未知的,這個要注意,我就犯了這個錯誤,後來憑 經驗自己改了,居然對了。 最後就是readfile,將文件流輸出到瀏覽器,這樣就實現了txt文件的下載,其他類型的類似。

Ⅹ php實現文件下載代碼

簡單的文件下載只需要使用HTML的連接標記<a>,並將屬性href的URL值指定為下載的文件即可。所示:

<a href=」http://www.*****.net/download/book.rar」>下載文件</a>

如果通過上面的代碼實現文件下載,只能處理一些瀏覽器不能默認識別的MIME類型文件,例如當訪問book.rar文件時,瀏覽器並沒有直接打開,而是彈出一個下載提示框,提示用戶「下載」還是「打開」等處理方式。但如果需要下載後綴名為.html的網頁文件、圖片文件及PHP程序腳本文件等,使用這種連接形式,則會將文件內容直接輸出到瀏覽器中,並不會提示用戶下載。

為了提高文件的安全性,不希望在<a>標簽中給出文件的鏈接,則必須向瀏覽器發送必要的頭信息,以通知瀏覽器將要進行下載文件的處理。PHP使用header()函數發送網頁的頭部信息給瀏覽器,該函數接收一個頭信息的字元串作為參數。文件下載需要發送的頭信息包括以下三部分,通過調用三次header()函數完成。以下載圖片test.gif為例,需要發送的頭信息的所示:

header(『Content-Type:imge/gif'); //發送指定文件MIME類型的頭信息
header(『Content-Disposition:attachment; filename=」test.gif」『); //發送描述文件的頭信息,附件和文件名
header(『Content-Length:3390′); //發送指定文件大小的信息,單位位元組

如果使用header()函數向瀏覽器發送了這三行頭信息,圖片test.gif就不會直接在瀏覽器中顯示,而讓瀏覽器將該文件形成下載的形式。在函數header()中,「Content-Type」指定了文件的MIME類型,「Content_Disposition」用於文件的描述,值「attachment;
filename=」test.gif」」說明這是一個附件,並且指定了下載後的文件名,「Content_Length」則給出了被下載文件的大小。

設置完頭部信息以後,需要將文件的內容輸出到瀏覽器,以便進行下載。可以使用PHP中的文件系統函數將文件內容讀取出來後,直接輸出給瀏覽器。最方便的是使用readfile()函數,將文件內容讀取出來直接輸出。下載文件test.gif的所示:

<?php
$filename = "test.gif";
header('Content-Type:image/gif'); //指定下載文件類型
header('Content-Disposition: attachment; filename="'.$filename.'"'); //指定下載文件的描述
header('Content-Length:'.filesize($filename)); //指定下載文件的大小

//將文件內容讀取出來並直接輸出,以便下載
readfile($filename);
?>

上面如果碰到中文名字就會無法正常下載了,對於中文名字下載文件我又找到一個文件下載實例代碼

<?php
header("Content-type:text/html;charset=utf-8");
// $file_name="cookie.jpg";
$file_name="聖誕狂歡.jpg";
//用以解決中文不能顯示出來的問題
$file_name=iconv("utf-8","gb2312",$file_name);
$file_sub_path=$_SERVER['DOCUMENT_ROOT']."marcofly/phpstudy/down/down/";
$file_path=$file_sub_path.$file_name;
//首先要判斷給定的文件存在與否
if(!file_exists($file_path)){
echo "沒有該文件文件";
return ;
}
$fp=fopen($file_path,"r");
$file_size=filesize($file_path);
//下載文件需要用到的頭
Header("Content-type: application/octet-stream");
Header("Accept-Ranges: bytes");
Header("Accept-Length:".$file_size);
Header("Content-Disposition: attachment; filename=".$file_name);
$buffer=1024;
$file_count=0;
//向瀏覽器返回數據
while(!feof($fp) && $file_count<$file_size){
$file_con=fread($fp,$buffer);
$file_count+=$buffer;
echo $file_con;
}
fclose($fp);
?>

header("Content-type:text/html;charset=utf-8")的作用:在伺服器響應瀏覽器的請求時,告訴瀏覽器以編碼格式為UTF-8的編碼顯示該內容

關於file_exists()函數不支持中文路徑的問題:因為php函數比較早,不支持中文,所以如果被下載的文件名是中文的話,需要對其進行字元編碼轉換,否則file_exists()函數不能識別,可以使用iconv()函數進行編碼轉換

$file_sub_path() 我使用的是絕對路徑,執行效率要比相對路徑高

Header("Content-type: application/octet-stream")的作用:通過這句代碼客戶端瀏覽器就能知道服務端返回的文件形式
Header("Accept-Ranges: bytes")的作用:告訴客戶端瀏覽器返回的文件大小是按照位元組進行計算的
Header("Accept-Length:".$file_size)的作用:告訴瀏覽器返回的文件大小
Header("Content-Disposition: attachment; filename=".$file_name)的作用:告訴瀏覽器返回的文件的名稱

以上四個Header()是必需的
fclose($fp)可以把緩沖區內最後剩餘的數據輸出到磁碟文件中,並釋放文件指針和有關的緩沖區

閱讀全文

與php實現下載功能相關的資料

熱點內容
安卓系統如何領取國旗 瀏覽:328
chromium編譯linux 瀏覽:469
exe在線反編譯工具 瀏覽:365
imbatest命令 瀏覽:410
android自動連接指定wifi 瀏覽:491
用紙做超簡單又解壓的東西 瀏覽:596
國密2演算法是對稱的嗎 瀏覽:465
nc65伺服器地址配置 瀏覽:522
單片機實驗報告電子琴 瀏覽:744
程序員恢復微信文件代碼 瀏覽:517
有漁python 瀏覽:81
pdf字體加深 瀏覽:206
怎麼做一個minecraft伺服器 瀏覽:771
c語言實現ls命令 瀏覽:663
小洋糕解壓視頻 瀏覽:450
域名內網訪問內網伺服器地址 瀏覽:138
我的世界伺服器如何摳掉金幣 瀏覽:223
域名與ip地址通過什麼伺服器查 瀏覽:96
企業網站需要什麼雲伺服器配置 瀏覽:910
遼事通伺服器出現錯誤是什麼原因 瀏覽:766