php如何實現(xiàn)txt下載文件

這期內(nèi)容當中小編將會給大家?guī)碛嘘Pphp如何實現(xiàn)txt下載文件,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

我們提供的服務有:成都網(wǎng)站建設、網(wǎng)站建設、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認證、敦化ssl等。為上1000家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務,是有科學管理、有技術的敦化網(wǎng)站制作公司

php實現(xiàn)txt下載文件的方法:1、創(chuàng)建一個PHP示例文件;2、添加“function downloadtxt($file = "") {...}”代碼;3、通過“downloadtxt("classmsg");”方式下載文件即可。

本文操作環(huán)境:windows7系統(tǒng)、PHP7.1版、Dell G3電腦。

php怎么實現(xiàn)txt下載文件?

PHP實現(xiàn)txt文件生成與下載

1.txt的生成
該函數(shù)運用在多條數(shù)據(jù)輸出,每個字段使用空格隔開,下條數(shù)據(jù)就直接換行

public function dlfileftxt($data = array(),$filename = "unknown") {
	header("Content-type:application/octet-stream");
	header("Accept-Ranges:bytes"); 
	header("Content-Disposition:attachment;filename=$filename.txt"); 
	header("Expires:0"); 
	header("Cache-Control:must-revalidate,post-check=0,pre-check=0 "); 
	header("Pragma:public");
	if (!empty($data)){
		foreach($data as $key=>$val){
			foreach ($val as $ck => $cv) {
				$data[$key][$ck]=iconv("UTF-8", "GB2312", $cv);				
			}
			$data[$key]=implode(" ", $data[$key]);				
		}
		echo implode("\n",$data);
	}
	exit();
}
dlfileftxt(array(1=>array("student"=>"小紅","class"=>"一班"),2=>array("student"=>"老黃","class"=>"二班")),"班級信息");

txt文件名:班級信息
txt內(nèi)容:
小紅 一班
老黃 二班
代碼解析:
"Content-type:application/octet-stream"
//只能提交二進制,而且只能提交一個二進制,如果提交文件的話,只能提交一個文件,后臺接收參數(shù)只能有一個,而且只能是流(或者字節(jié)數(shù)組)
"Accept-Ranges: bytes"
//表明服務器是否支持指定范圍請求及哪種類型的分段請求
"Content-Disposition:attachment;filename=$filename.txt"
//當然filename參數(shù)可以包含路徑信息,但User-Agnet會忽略掉這些信息,只會把路徑信息的最后一部分做為文件名。當你在響應類型為application/octet- stream情況下使用了這個頭信息的話,那就意味著你不想直接顯示內(nèi)容,而是彈出一個"文件下載"的對話框,接下來就是由你來決定"打開"還是"保存" 了
(注:部分瀏覽器會識別不了中文字符串出現(xiàn)亂碼情況,需要強制轉化字符串的字符編碼UTF-8)

1.txt的下載
由于部分瀏覽器可以解釋txt文件,導致使用瀏覽器訪問服務器某個txt時候,會打開一個新的窗口閱覽txt內(nèi)容,而不是下載文件

function downloadtxt($file = "") {
	if(!$file) 
		return false;
	$filename = '/path/'.$file.'.txt'; //文件路徑
	header("Content-Type: application/force-download");
	header("Content-Disposition: attachment; filename=".basename($filename));
	readfile($filename);
}
downloadtxt("classmsg");

代碼解析:
"Content-Type: application/force-download"
//強制下載文件內(nèi)容
readfile()
//本函數(shù)讀取文件,并將文件內(nèi)容寫入標準輸出設備中。返回值是讀取的文件大小

上述就是小編為大家分享的php如何實現(xiàn)txt下載文件了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

文章題目:php如何實現(xiàn)txt下載文件
URL網(wǎng)址:http://muchs.cn/article20/jcpico.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供ChatGPT、標簽優(yōu)化、面包屑導航、網(wǎng)站設計、Google、小程序開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運營