⑴ 如何實現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如何實現下載任意格式的文件
以下載PDF文件為來例:
<?php
header('Content-type: application/pdf');//文件類源型
header('Content-Disposition: attachment; filename="downloaded.pdf"');//默認保存的文件名
readfile('original.pdf');//實際的文件路徑
?>
其他文件類型的寫法參考
http://apps.hi..com/share/detail/14191244
⑶ PHP中怎麼用代碼實現文件下載
直接寫一個鏈接,鏈接到你要下載的文件的路徑,比如文件在您網站的根目錄的\download下
<a href="./download/文件.rar"></a>
⑷ php實現文件安全下載的代碼怎麼用
你可抄以建立一個函數襲如下:
function download($fileName
){
Header("content-type:application/octet-stream");
Header("content-disposition:attatchment;filename:".$fileName.".torrent");
if(file_exists($fileAdd) && $file=fopen($fileAdd,"r"))//判斷文件是否存在並打開
{
fread($file,filesize($fileAdd));//讀取文件內容並吐給瀏覽器
fclose($file);
}
}
注釋$fileName是文件名字,或者文件地址,最好寫文件地址,你那個fileAdd這個也是文件地址吧,可以協同一個。
我看見你後面加了後綴名,所以fileName轉成fileAdd需要添加後綴名
其實你最後的哪個讀取文件可以用一句話ok
就是readfile($fileName);
我寫的比較模糊,其實$fileName就是個文件地址。
⑸ php中點擊超鏈接下載伺服器端的文件怎麼實現,以下代碼有誤
function file_down($filepath, $filename = '') {
if(!$filename) $filename = basename($filepath);
if(is_ie()) $filename = rawurlencode($filename);
$filetype = fileext($filename);
$filesize = sprintf("%u", filesize($filepath));
if(ob_get_length() !== false) @ob_end_clean();
header('Pragma: public');
header('Last-Modified: '.gmdate('D, d M Y H:i:s') . ' GMT');
header('Cache-Control: no-store, no-cache, must-revalidate');
header('Cache-Control: pre-check=0, post-check=0, max-age=0');
header('Content-Transfer-Encoding: binary');
header('Content-Encoding: none');
header('Content-type: '.$filetype);
header('Content-Disposition: attachment; filename="'.$filename.'"');
header('Content-length: '.$filesize);
readfile($filepath);
exit;
}
我需要分 給分吧
你在控制器調用這個方法 然後傳一個文件地址就可以下載了
⑹ php如何實現中轉下載文件
<?php
header('Content-type:application/save-as');
header('Content-Disposition:attachment;filename="a.rar"');
readfile('http://a.com/a.rar');
?>
上面的例子只用了三個語句,完全就能實現你的基本功能。兩個header語句告訴瀏覽器把接下來的數據保存為文件,readfile語句從互聯網上獲得文件內容到伺服器,然後再發給瀏覽器。
你需要使用url參數獲得地址,這個代碼不難,你應該是會的。