国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

首頁(yè) 后端開(kāi)發(fā) php教程 PHP文件上載過(guò)濾類(lèi)

PHP文件上載過(guò)濾類(lèi)

Jun 13, 2016 am 11:02 AM
application gt this

PHP文件下載過(guò)濾類(lèi)

<?php	/**	 * file download class	 * Create Time:06/23/2009	 * Author:DAKER.W	 * QQ:451021477		 */	class Download{		private $debug			= false;		private $errorMsg		= '';			private $filter			= array();		private $fileName		= '';		private $mineType		= '';		private $xlq_filetype	= array();		private $limitTime		= 60;		/**		 * @param string $fileFilter 		 * @param boolean $isDebug		 */		function __construct($fileFilter='', $isDebug=true)		{			$this->setFilter($fileFilter);			$this->setDebug($isDebug);			$this->setFileType();		}				function downloadfile($filename)		{			$this->fileName		= $filename;			if($this->filecheck()){				$fn				= basename($this->fileName);				ob_end_clean();				@set_time_limit($this->limitTime);				header('Cache-control: max-age=31536000');				header('Expires: '.gmdate('D, d M Y H:i:s',time()+31536000).' GMT');				header('Content-Encoding: none');				header('Content-Length: '.filesize($this->fileName));				header('Content-Disposition: attachment; filename='.$fn);				header('Content-Type: '.$this->mineType);				readfile($this->fileName);				return true;			}else{				return false;			}		}				function filecheck()		{			$fileName		= $this->fileName;			if(file_exists($fileName)){				$fileType	= strtolower(array_pop(explode(".", $fileName)));				if(!in_array($fileType, $this->filter)){					$this->errorMsg	.= sprintf("%s can't download!", $fileName);					if($this->debug)exit(sprintf("%s can't download!", $fileName));					return false;				}else {					if(function_exists("mime_content_type")){						$this->mineType		= mime_content_type($fileName);					}										if(empty($this->mineType)){						if(isset($this->xlq_filetype[$fileType])){							$this->mineType		= $this->xlq_filetype[$fileType];						}					}										if(!empty($this->mineType)){						return true;					}else {						$this->errorMsg			.= "Can't get file type!";						if($this->debug)exit("Can't get file type!");						return false;																		}				}							}else {				$this->errorMsg				.= sprintf("%s isn't exists!", $fileName);				if($this->debug)exit(sprintf("%s isn't exists!", $fileName));				return false;							}		}		function setFileType()		{		    $this->xlq_filetype['chm']='application/octet-stream';		    $this->xlq_filetype['ppt']='application/vnd.ms-powerpoint';		    $this->xlq_filetype['xls']='application/vnd.ms-excel';		    $this->xlq_filetype['doc']='application/msword';		    $this->xlq_filetype['exe']='application/octet-stream';		    $this->xlq_filetype['rar']='application/octet-stream';		    $this->xlq_filetype['js']="javascrīpt/js";		    $this->xlq_filetype['css']="text/css";		    $this->xlq_filetype['hqx']="application/mac-binhex40";		    $this->xlq_filetype['bin']="application/octet-stream";		    $this->xlq_filetype['oda']="application/oda";		    $this->xlq_filetype['pdf']="application/pdf";		    $this->xlq_filetype['ai']="application/postsrcipt";		    $this->xlq_filetype['eps']="application/postsrcipt";		    $this->xlq_filetype['es']="application/postsrcipt";		    $this->xlq_filetype['rtf']="application/rtf";		    $this->xlq_filetype['mif']="application/x-mif";		    $this->xlq_filetype['csh']="application/x-csh";		    $this->xlq_filetype['dvi']="application/x-dvi";		    $this->xlq_filetype['hdf']="application/x-hdf";		    $this->xlq_filetype['nc']="application/x-netcdf";		    $this->xlq_filetype['cdf']="application/x-netcdf";		    $this->xlq_filetype['latex']="application/x-latex";		    $this->xlq_filetype['ts']="application/x-troll-ts";		    $this->xlq_filetype['src']="application/x-wais-source";		    $this->xlq_filetype['zip']="application/zip";		    $this->xlq_filetype['bcpio']="application/x-bcpio";		    $this->xlq_filetype['cpio']="application/x-cpio";		    $this->xlq_filetype['gtar']="application/x-gtar";		    $this->xlq_filetype['shar']="application/x-shar";		    $this->xlq_filetype['sv4cpio']="application/x-sv4cpio";		    $this->xlq_filetype['sv4crc']="application/x-sv4crc";		    $this->xlq_filetype['tar']="application/x-tar";		    $this->xlq_filetype['ustar']="application/x-ustar";		    $this->xlq_filetype['man']="application/x-troff-man";		    $this->xlq_filetype['sh']="application/x-sh";		    $this->xlq_filetype['tcl']="application/x-tcl";		    $this->xlq_filetype['tex']="application/x-tex";		    $this->xlq_filetype['texi']="application/x-texinfo";		    $this->xlq_filetype['texinfo']="application/x-texinfo";		    $this->xlq_filetype['t']="application/x-troff";		    $this->xlq_filetype['tr']="application/x-troff";		    $this->xlq_filetype['roff']="application/x-troff";		    $this->xlq_filetype['shar']="application/x-shar";		    $this->xlq_filetype['me']="application/x-troll-me";		    $this->xlq_filetype['ts']="application/x-troll-ts";		    $this->xlq_filetype['gif']="image/gif";		    $this->xlq_filetype['jpeg']="image/pjpeg";		    $this->xlq_filetype['jpg']="image/pjpeg";		    $this->xlq_filetype['jpe']="image/pjpeg";		    $this->xlq_filetype['ras']="image/x-cmu-raster";		    $this->xlq_filetype['pbm']="image/x-portable-bitmap";		    $this->xlq_filetype['ppm']="image/x-portable-pixmap";		    $this->xlq_filetype['xbm']="image/x-xbitmap";		    $this->xlq_filetype['xwd']="image/x-xwindowdump";		    $this->xlq_filetype['ief']="image/ief";		    $this->xlq_filetype['tif']="image/tiff";		    $this->xlq_filetype['tiff']="image/tiff";		    $this->xlq_filetype['pnm']="image/x-portable-anymap";		    $this->xlq_filetype['pgm']="image/x-portable-graymap";		    $this->xlq_filetype['rgb']="image/x-rgb";		    $this->xlq_filetype['xpm']="image/x-xpixmap";		    $this->xlq_filetype['txt']="text/plain";		    $this->xlq_filetype['c']="text/plain";		    $this->xlq_filetype['cc']="text/plain";		    $this->xlq_filetype['h']="text/plain";		    $this->xlq_filetype['html']="text/html";		    $this->xlq_filetype['htm']="text/html";		    $this->xlq_filetype['htl']="text/html";		    $this->xlq_filetype['rtx']="text/richtext";		    $this->xlq_filetype['etx']="text/x-setext";		    $this->xlq_filetype['tsv']="text/tab-separated-values";		    $this->xlq_filetype['mpeg']="video/mpeg";		    $this->xlq_filetype['mpg']="video/mpeg";		    $this->xlq_filetype['mpe']="video/mpeg";		    $this->xlq_filetype['avi']="video/x-msvideo";		    $this->xlq_filetype['qt']="video/quicktime";		    $this->xlq_filetype['mov']="video/quicktime";		    $this->xlq_filetype['moov']="video/quicktime";		    $this->xlq_filetype['movie']="video/x-sgi-movie";		    $this->xlq_filetype['au']="audio/basic";		    $this->xlq_filetype['snd']="audio/basic";		    $this->xlq_filetype['wav']="audio/x-wav";		    $this->xlq_filetype['aif']="audio/x-aiff";		    $this->xlq_filetype['aiff']="audio/x-aiff";		    $this->xlq_filetype['aifc']="audio/x-aiff";		    $this->xlq_filetype['swf']="application/x-shockwave-flash";		}				function setFilter($fileFilter)		{			if(empty($fileFilter))return ;			$this->filter	= explode(",", strtolower($fileFilter));		}				function setDebug($debug)		{			$this->debug	= $debug;		}				function setlimittime($limittime)		{			$this->limitTime	= $limittime;		}				function getfilename($filename)		{			return  $this->fileName;		}				function getErrorMsgs()		{			return $this->errorMsg;			}				function __destruct()		{			$this->errorMsg			= '';		}	}?>

//?? 使用范例:

?$filename='data.rar';
?$download=new download('php,exe,html',false);
? if(!$download->downloadfile($filename,'數(shù)據(jù)'))
? {
????????? echo $download->geterrormsg();
? }

本站聲明
本文內(nèi)容由網(wǎng)友自發(fā)貢獻(xiàn),版權(quán)歸原作者所有,本站不承擔(dān)相應(yīng)法律責(zé)任。如您發(fā)現(xiàn)有涉嫌抄襲侵權(quán)的內(nèi)容,請(qǐng)聯(lián)系admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費(fèi)脫衣服圖片

Undresser.AI Undress

Undresser.AI Undress

人工智能驅(qū)動(dòng)的應(yīng)用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用于從照片中去除衣服的在線(xiàn)人工智能工具。

Clothoff.io

Clothoff.io

AI脫衣機(jī)

Video Face Swap

Video Face Swap

使用我們完全免費(fèi)的人工智能換臉工具輕松在任何視頻中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費(fèi)的代碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

功能強(qiáng)大的PHP集成開(kāi)發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺(jué)化網(wǎng)頁(yè)開(kāi)發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級(jí)代碼編輯軟件(SublimeText3)

熱門(mén)話(huà)題

Laravel 教程
1601
29
PHP教程
1502
276
華為GT3 Pro和GT4的差異是什么? 華為GT3 Pro和GT4的差異是什么? Dec 29, 2023 pm 02:27 PM

許多用戶(hù)在選擇智能手表的時(shí)候都會(huì)選擇的華為的品牌,其中華為GT3pro和GT4都是非常熱門(mén)的選擇,不少用戶(hù)都很好奇華為GT3pro和GT4有什么區(qū)別,下面就就給大家介紹一下二者。華為GT3pro和GT4有什么區(qū)別一、外觀GT4:46mm和41mm,材質(zhì)是玻璃表鏡+不銹鋼機(jī)身+高分纖維后殼。GT3pro:46.6mm和42.9mm,材質(zhì)是藍(lán)寶石玻璃表鏡+鈦金屬機(jī)身/陶瓷機(jī)身+陶瓷后殼二、健康GT4:采用最新的華為T(mén)ruseen5.5+算法,結(jié)果會(huì)更加的精準(zhǔn)。GT3pro:多了ECG心電圖和血管及安

修復(fù):截圖工具在 Windows 11 中不起作用 修復(fù):截圖工具在 Windows 11 中不起作用 Aug 24, 2023 am 09:48 AM

為什么截圖工具在Windows11上不起作用了解問(wèn)題的根本原因有助于找到正確的解決方案。以下是截圖工具可能無(wú)法正常工作的主要原因:對(duì)焦助手已打開(kāi):這可以防止截圖工具打開(kāi)。應(yīng)用程序損壞:如果截圖工具在啟動(dòng)時(shí)崩潰,則可能已損壞。過(guò)時(shí)的圖形驅(qū)動(dòng)程序:不兼容的驅(qū)動(dòng)程序可能會(huì)干擾截圖工具。來(lái)自其他應(yīng)用程序的干擾:其他正在運(yùn)行的應(yīng)用程序可能與截圖工具沖突。證書(shū)已過(guò)期:升級(jí)過(guò)程中的錯(cuò)誤可能會(huì)導(dǎo)致此issu簡(jiǎn)單的解決方案這些適合大多數(shù)用戶(hù),不需要任何特殊的技術(shù)知識(shí)。1.更新窗口和Microsoft應(yīng)用商店應(yīng)用程

python WSGI?Application原理是什么 python WSGI?Application原理是什么 May 19, 2023 pm 01:25 PM

本篇文章所依賴(lài)的python環(huán)境為:什么是WSGIWSGI也稱(chēng)之為web服務(wù)器通用網(wǎng)關(guān)接口,全稱(chēng)是webservergatewayinterface。它定義了在python中web服務(wù)器與web應(yīng)用程序之間應(yīng)該如何通信并且處理http請(qǐng)求和響應(yīng)的一個(gè)標(biāo)準(zhǔn),注意,它只是一個(gè)協(xié)議,或者說(shuō)是規(guī)范、標(biāo)準(zhǔn),你也可以不按這個(gè)標(biāo)準(zhǔn)來(lái),就像我們上一篇文章所寫(xiě)的web服務(wù)器那樣。WSGI也分為應(yīng)用程序和服務(wù)器網(wǎng)關(guān),其中我們熟知的Flask就是屬于應(yīng)用程序,uWSGI、wsgiref屬于服務(wù)器網(wǎng)關(guān)。個(gè)人感覺(jué),WSG

SpringBoot之bootstrap和application的區(qū)別是什么 SpringBoot之bootstrap和application的區(qū)別是什么 May 16, 2023 pm 05:46 PM

bootstrap和application的區(qū)別說(shuō)明bootstrap和application都是SpringBoot項(xiàng)目中的配置文件,他們的區(qū)別主要有以下的幾個(gè)方面(1)加載順序區(qū)別bootstrap配置文件是比application配置文件優(yōu)先加載的,因?yàn)閎ootstrap是由spring父上下文加載,而application是由子上下文加載(2)優(yōu)先級(jí)區(qū)別bootstrap加載的配置信息是不能被application的相同配置覆蓋的,如果兩個(gè)配置文件同時(shí)存在,也是以bootstrap為主(

如何修復(fù)無(wú)法連接到iPhone上的App Store錯(cuò)誤 如何修復(fù)無(wú)法連接到iPhone上的App Store錯(cuò)誤 Jul 29, 2023 am 08:22 AM

第1部分:初始故障排除步驟檢查蘋(píng)果的系統(tǒng)狀態(tài):在深入研究復(fù)雜的解決方案之前,讓我們從基礎(chǔ)知識(shí)開(kāi)始。問(wèn)題可能不在于您的設(shè)備;蘋(píng)果的服務(wù)器可能會(huì)關(guān)閉。訪問(wèn)Apple的系統(tǒng)狀態(tài)頁(yè)面,查看AppStore是否正常工作。如果有問(wèn)題,您所能做的就是等待Apple修復(fù)它。檢查您的互聯(lián)網(wǎng)連接:確保您擁有穩(wěn)定的互聯(lián)網(wǎng)連接,因?yàn)椤盁o(wú)法連接到AppStore”問(wèn)題有時(shí)可歸因于連接不良。嘗試在Wi-Fi和移動(dòng)數(shù)據(jù)之間切換或重置網(wǎng)絡(luò)設(shè)置(“常規(guī)”>“重置”>“重置網(wǎng)絡(luò)設(shè)置”>設(shè)置)。更新您的iOS版本:

php提交表單通過(guò)后,彈出的對(duì)話(huà)框怎樣在當(dāng)前頁(yè)彈出,該如何解決 php提交表單通過(guò)后,彈出的對(duì)話(huà)框怎樣在當(dāng)前頁(yè)彈出,該如何解決 Jun 13, 2016 am 10:23 AM

php提交表單通過(guò)后,彈出的對(duì)話(huà)框怎樣在當(dāng)前頁(yè)彈出php提交表單通過(guò)后,彈出的對(duì)話(huà)框怎樣在當(dāng)前頁(yè)彈出而不是在空白頁(yè)彈出?想實(shí)現(xiàn)這樣的效果:而不是空白頁(yè)彈出:------解決方案--------------------如果你的驗(yàn)證用PHP在后端,那么就用Ajax;僅供參考:HTML code

聊聊Vue2為什么能通過(guò)this訪問(wèn)各種選項(xiàng)中屬性 聊聊Vue2為什么能通過(guò)this訪問(wèn)各種選項(xiàng)中屬性 Dec 08, 2022 pm 08:22 PM

本篇文章帶大家解讀vue源碼,來(lái)介紹一下Vue2中為什么可以使用 this 訪問(wèn)各種選項(xiàng)中的屬性,希望對(duì)大家有所幫助!

如何使用 iPadOS 17.4 優(yōu)化 iPad 電池壽命 如何使用 iPadOS 17.4 優(yōu)化 iPad 電池壽命 Mar 21, 2024 pm 10:31 PM

如何使用iPadOS17.4優(yōu)化iPad電池壽命延長(zhǎng)電池續(xù)航時(shí)間是移動(dòng)設(shè)備體驗(yàn)的關(guān)鍵,iPad是一個(gè)很好的例子。如果您覺(jué)得iPad電池消耗速度過(guò)快,不用擔(dān)心,在iPadOS17.4中有許多技巧和調(diào)整可以顯著延長(zhǎng)設(shè)備的運(yùn)行時(shí)間。本深入指南的目標(biāo)不僅僅是提供信息,而是改變您使用iPad的方式,增強(qiáng)您的整體電池管理,并確保您可以在無(wú)需充電的情況下更長(zhǎng)時(shí)間地依賴(lài)您的設(shè)備。通過(guò)采用此處概述的做法,您朝著更高效、更謹(jǐn)慎地使用技術(shù)邁出了一步,這些技術(shù)是根據(jù)您的個(gè)人需求和使用模式量身定制的。識(shí)別主要的能量消耗者

See all articles