php多文件上传
分类:博客热点

/*多文件上传类改善:Linvo2009-2-15*/classmore_file_upload{constFILE_PATH='../upfileclass/uploadfile/';var$file_type;var$file_type_威尼斯正规官网,array;var$file_type_real_array;var$file_type_string;var$file_name;var$file_size;var$file_tmp_name;var$file_error;var$handledate;static$totalsize=0;function__construct($file_name,$file_error,$file_size,$file_tmp_name,$file_type){$this-handledate=date('m-d-Y');if(!empty($file_name)){$this-file_name=$file_name;$this-file_error=$file_error;$this-file_size=$file_size;$this-file_tmp_name=$file_tmp_name;$this-file_type=$file_type;$this-file_type_array=array('/','image/gif','image/jpg','image/jpeg','image/pjpeg','image/png');$this-file_type_real_array=array(0.1,'jpg'=74707370,'gif'=7173,'bmp'=6677,'png'=807871);$this-show_execute_message($this-file_error,$this-file_name,$this-file_type,$this-file_size);}}function__destruct(){$this-file_name=NULL;$this-file_error=NULL;$this-file_size=NULL;$this-file_tmp_name=NULL;$this-file_type=NULL;self::$totalsize=0;}functionshow_execute_message($smfileerror,$smfilename,$smfiletype,$smfilesizeState of Qatar{if($smfileerror0State of Qatar{switch($smfileerror卡塔尔(قطر‎{case1:$smfilemessage='strong文件超越服务器的预定大小!/strong';break;case2:$smfilemessage='strong文件超越钦赐的文件大小!/strong';break;case3:$smfilemessage='strong文件只上传了一部分!/strong';break;case4:echo$this-file_name.'文件上传退步!br/';break;}self::__destruct();}else{$smfiletypeflag=array_search($smfiletype,$this-file_type_array卡塔尔(قطر‎;//进行下马看花格式验证if($smfiletypeflag!=false){$file=fopen($this-file_tmp_name,rb);$bin=fread($file,10);fclose($file);$strInfo=@unpack(c10chars,$bin);$typeCode=intval($strInfo['chars1'].$strInfo['chars2']);$smfiletypeflag=array_search($typeCode,$this-file_type_real_array卡塔尔;if($smfiletypeflag==falseState of Qatar{//推断是还是不是是png图片$typeCode=intval($strInfo['chars2'].$strInfo['chars3'].$strInfo['chars4']);$smfiletypeflag=array_search($typeCode,$this-file_type_real_arrayState of Qatar;if($smfiletypeflag==false卡塔尔{//判别是或不是是jpg图片$typeCode=intval($strInfo['chars7'].$strInfo['chars8'].$strInfo['chars9'].$strInfo['chars10']);$smfiletypeflag=array_search($typeCode,$this-file_type_real_array卡塔尔(قطر‎;}}}if($smfiletypeflag==false卡塔尔(قطر‎{$smfilemessage='strong文件类型不对,请核准!/strong';self::__destruct();}else{$resflag=$this-move_file($this-file_tmp_name,$this-file_nameState of Qatar;if($resflag==1卡塔尔(قطر‎{$smfilemessage='文件上传成功!';self::$totalsize+=intval($smfilesize卡塔尔;self::__destruct(State of Qatar;}else{$smfilemessage='strong文件上传退步!/strong';self::__destruct();}}}$smfilesizeformat=$this-size_BKM($smfilesize);echo'trtdalign=left'.$smfilename.'/tdtdalign=center'.$smfiletype.'/tdtdalign=center'.$smfilesizeformat.'/tdtdalign=center'.$smfilemessage.'/td/tr';}functionmove_file($mvfiletmp,$mvfilename卡塔尔{//移动文件$mvfilenamearr=explode('.',basename($mvfilename卡塔尔卡塔尔(قطر‎;$mvfilenamearr[0]=$this-rand_string();$mvfilename=implode('.',$mvfilenamearr);if(is_uploaded_file($mvfiletmp)){$uploadfile=self::FILE_PATH.$mvfilename;$result=move_uploaded_file($mvfiletmp,$uploadfile);return$result;}}functionrand_string(){$string=md5(uniqid(rand().microtime()));return$string;}functionsize_BKM($sizeState of Qatar{//B/KB/MB单位转变if($size1024卡塔尔国{$size_BKM=(string)$size.B;}elseif($size(1024*1024)){$size_BKM=number_format((double)($size/1024),1).KB;}else{$size_BKM=number_format((double)($size/(1024*1024)),1).MB;}return$size_BKM;}}

正文实例陈说了PHP多文件上传类。分享给大家供大家参谋。具体如下:复制代码 代码如下:handledate=date; if { $this->$file_name = $file_name; $this->$file_error = $file_error; $this->$file_size = $file_size; $this->$file_tmp_name = $file_tmp_name; $this->$file_type = $file_type; $this->$file_type_array = array('/', 'image/gif', 'image/jpg', 'image/jpeg', 'image/pjpeg', 'image/png'); $this->$file_type_real_array = array(0.1, 'jpg'=>74707370, 'gif'=>7173, 'bmp'=>6677, 'png'=>807871); $this->show_execute_message($this->$file_error,$this->$file_name,$this->$file_type,$this->$file_size); }}function __destruct(){ $this->$file_name = NULL; $this->$file_error = NULL; $this->$file_size = NULL; $this->$file_tmp_name = NULL; $this->$file_type = NULL; $this->$totalsize = 0;}function show_execute_message($smfileerror,$smfilename,$smfiletype,$smfilesize){if{ switch { case 1: $smfilemessage='文本超越服务器的约定大小!';break; case 2: $smfilemessage ='文本超过钦赐的文件大小!';break; case 3: $smfilemessage='文件只上传了有的!';break; case 4: echo "$this->$file_name ".'文件上传战败!
';break; } self::__destruct();}else{ $smfiletypeflag = array_search($smfiletype,$this->$file_type_array卡塔尔国;//举行实际格式验证if($smfiletypeflag != false){$file = fopen($this->$file_tmp_name, "rb");$bin = fread;fclose;$strInfo = @unpack;$typeCode = intval($strInfo['chars1'].$strInfo['chars2']);$smfiletypeflag = array_search($typeCode, $this->$file_type_real_array卡塔尔国;if($smfiletypeflag == false卡塔尔{ //推断是还是不是是png图片$typeCode = intval($strInfo['chars2'].$strInfo['chars3'].$strInfo['chars4']);$smfiletypeflag = array_search($typeCode, $this->$file_type_real_array卡塔尔国;if($smfiletypeflag == false卡塔尔(قطر‎{ //推断是或不是是jpg图片$$typeCode = intval($strInfo['chars7'].$strInfo['chars8'].$strInfo['chars9'].$strInfo['chars10']);$smfiletypeflag = array_search($typeCode, $this->$file_type_real_array);}}}if($smfiletypeflag ==

false){$smfilemessage='文件类型不对,请核查!';self::__destruct();}else{$resflag

$$this->move_file($$this->$file_tmp_name,$this->$file_name卡塔尔(قطر‎;if {$smfilemessage = '文件上传成功!';$this->totalsize += intval;self::__destruct();}else{$smfilemessage = '文本上传失利!';self::__destruct();}}}$$smfilesizeformat = $this->size_BKM;echo '

'.$smfilename.'

'.$smfiletype.'

'.$smfilesizeformat.'

'.smfilemessage.'

';}function move_file($mvfiletmp,$mvfilename卡塔尔{ //移动文件$mvfilenamearr = explode('.',basename;$mvfilenamearr[0] = $this->rand_string();$mvfilename = implode;if (is_uploaded_file{$uploadfile = self::FILE_PATH."$mvfilename";$result = move_uploaded_file($mvfiletmp,$uploadfile);return $result;}}function rand_string(){$string = md5.microtime;return $string;}function size_BKM{ // B/KB/MB单位转变if{$size_BKM = $size . " B";}elseif){$size_BKM = number_format . " KB";}else{$size_BKM = number_format,1)." MB";}return $size_BKM;}}?>

意在本文所述对大家的php程序设计具备助于。

本文由威尼斯在线注册平台发布于博客热点,转载请注明出处:php多文件上传

上一篇:用PHP MySQL搭建聊天室 下一篇:没有了
猜你喜欢
热门排行
精彩图文