亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 語言 > PHP > 正文

php文件上傳類,支持單個或者多個文件上傳

2024-09-04 11:44:10
字體:
來源:轉載
供稿:網友

這個文件上傳類可以實現多個文件或單個文件進行上傳了,下面小編來給各位推薦一個不錯的例子,實例代碼如下:

  1. <!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd"
  2. <html xmlns="http://www.49028c.com/1999/xhtml"
  3. <head> 
  4. <meta http-equiv="content-type" content="text/html; charset=gb2312" /> 
  5. <title>無標題文檔</title> 
  6. </head> 
  7.  
  8. <body> 
  9. <?php 
  10. //php文件上傳類(該類支持單個或者多個文件上傳) 
  11.  /** 
  12.  * 類名:upfile 
  13.  * 作用:處理文件上傳 
  14.  * 說明,該類處理單個或者多個文件上傳,使用該類時,只需要實列化該類 
  15.  * 例: 
  16.  * $up = upfile() 
  17.  * $up->update_file($_file['filename']) 
  18.  * 
  19.  * $up->update_file   函數返回一個數組,如果是多文件上傳,則為多維數據。 
  20.  * 數組的內容: 
  21.  * $fileinfo['file_size']   上傳文件的大小 
  22.  * $fileinfo['file_suffix'] 上傳文件的類型 
  23.  * $fileinfo['file_name']   上傳文件的名字 
  24.  * $fileinfo['error']     上傳文件產生的錯誤 
  25.  * 
  26.  
  27.  */ 
  28. class upfile { 
  29.  public $fcount = 1;           //上傳文件的數量 
  30.  public $ftype  = array('jpg','jpeg','gif','png');  //文件格式 
  31.  public $fsize  = 1024;          //文件大小單位kb 
  32.  public $fdir   = 'www.111cn.net/';         //文件存放目錄 
  33.  public $errormsg = '';          //產生的臨時錯誤信息 
  34.  
  35.  /** 
  36.   *函數名:get_tmp_file($putfile) 
  37.   *作用:取得上傳的臨時文件名 
  38.   *@param array $putfile 
  39.   *@return string $upimg 返回臨時文件名 
  40.   */ 
  41.   function get_tmp_file($putfile){ 
  42.   if($this->fcount == 1){ 
  43.    $tmpfile = $putfile['tmp_name']; 
  44.   }else
  45.    for($i=0;$i<$this->fcount;$i++){ 
  46.     $tmpfile[] = $putfile['tmp_name'][$i]; 
  47.    } 
  48.   } 
  49.   return $tmpfile
  50.   } 
  51.  
  52.  /** 
  53.   *函數名:get_suffix($filename) 
  54.   *作用:取得文件的后綴名 
  55.   *@param file $filename 
  56.   *@return string $suffixname 返回后綴名 
  57.   */ 
  58.   function get_suffix($filename){ 
  59.   $link = pathinfo($filename); 
  60.      $suffixname = strtolower($link['extension']); 
  61.      return $suffixname
  62.   } 
  63.  
  64.  /** 
  65.   *驗證文件大小 
  66.   *@author 趙紅健 
  67.   *@param $filesize 
  68.   *@return booln 
  69.   */ 
  70.  function check_file_size($filesize){ 
  71.   $this->errormsg = ''
  72.   if($filesize/1000 > $this->fsize){ 
  73.    $this->errormsg = '警告:文件超出大小!'
  74.    return false; 
  75.   }else
  76.    return true; 
  77.   } 
  78.  } 
  79.  
  80.  /** 
  81.   *驗證文件類型是否合法 
  82.   *@author 趙紅健 
  83.   *@param $filesuffix 
  84.   *@return booln 
  85.   */ 
  86.  function check_file_suffix($filesuffix){ 
  87.    $this->errormsg = ''
  88.    if(!in_array($filesuffix,$this->ftype)){ 
  89.     $this->errormsg = '警告:文件類型不在允許范圍內!'
  90.     return false; 
  91.    }else
  92.     return true; 
  93.    } 
  94.  } 
  95.  
  96.  /** 
  97.   *移動臨時文件 
  98.   *@author 趙紅健 
  99.   *@param $filesuffix 
  100.   *@return booln 
  101.   */ 
  102.  function move_temp_file($tmpfile,$targetfile){ 
  103.    $this->errormsg = ''
  104.    if(!move_uploaded_file($tmpfile,$targetfile)){ 
  105.     $this->errormsg = '警告:文件移動失??!'
  106.     return false; 
  107.    }else
  108.     return true; 
  109.    } 
  110.  } 
  111.  
  112.  
  113.      /** 
  114.    *函數名:update_file($putfile) 
  115.    *作用:上傳文件 
  116.    *@param array $putfile 
  117.    *@return array 文件信息 
  118.    */ 
  119.     function update_file($putfile){ 
  120.    $tmpfile = $this->get_tmp_file($putfile); 
  121.    if(!file_exists($this->fdir)){ 
  122.        $this->errormsg[] = '錯誤:目錄'.$this->fdir.'不存在'
  123.     return $this->errormsg; 
  124.    } 
  125.    $this->fdir = substr($this->fdir,strlen($this->fdir)-1,1)=='/'?$this->fdir:$this->fdir.'/'
  126.    if(!is_array($putfile['size'])){ 
  127.     $fileinfo['file_size'] = $putfile['size']; 
  128.     if(!$this->check_file_size($fileinfo['file_size'])){ 
  129.      $fileinfo['error'] = $this->errormsg; 
  130.      return $fileinfo
  131.     } 
  132.     $fileinfo['file_suffix'] = $this->get_suffix($putfile['name']); 
  133.     if(!$this->check_file_suffix($fileinfo['file_suffix'])){ 
  134.      $fileinfo['error'] = $this->errormsg; 
  135.      return $fileinfo
  136.     } 
  137.  
  138.     $fileinfo['file_name']   = date('ymdhms').'.'.$fileinfo['file_suffix']; 
  139.     if(!$this->move_temp_file($tmpfile,$this->fdir.$fileinfo['file_name'])){ 
  140.      $fileinfo['error'] = $this->errormsg; 
  141.      return $fileinfo
  142.     } 
  143.     return $fileinfo
  144.  
  145.    }else
  146.     for($i=0;$i<$this->fcount;$i++){ 
  147.      $fileinfo[$i]['file_size'] = $putfile['size'][$i]; 
  148.      if(!$this->check_file_size($fileinfo[$i]['file_size'])){ 
  149.       $fileinfo[$i]['error'] = $this->errormsg; 
  150.       continue
  151.      } 
  152.  
  153.      $fileinfo[$i]['file_suffix'] = $this->get_suffix($putfile['name'][$i]); 
  154.      if(!$this->check_file_suffix($fileinfo[$i]['file_suffix'])){ 
  155.       $fileinfo[$i]['error'] = $this->errormsg; 
  156.       continue
  157.      } 
  158.  
  159.      $fileinfo[$i]['file_name']  = date('ymdhms').rand().'.'.$fileinfo[$i]['file_suffix']; 
  160.      if(!$this->move_temp_file($tmpfile[$i],$this->fdir.$fileinfo[$i]['file_name'])){ 
  161.       $fileinfo[$i]['error'] = $this->errormsg; 
  162.       continue;//開源代碼Vevb.com 
  163.      } 
  164.      } 
  165.     return $fileinfo
  166.    } 
  167.     } 
  168.  
  169. ?> 
  170. </body> 
  171. </html> 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品一区二区三区久久| 国产精品视频男人的天堂| 国产一区二中文字幕在线看| 欧美一级视频免费在线观看| 国产婷婷色综合av蜜臀av| 国产亚洲精品一区二区| 超碰精品一区二区三区乱码| 欧美一级片久久久久久久| 国内精品久久久久| 精品亚洲一区二区三区| 久久精品一偷一偷国产| 中文字幕亚洲图片| 51精品在线观看| 亚洲国产日韩欧美综合久久| 欧美午夜视频一区二区| 国产午夜精品一区二区三区| 国产成人在线播放| 亚洲欧美一区二区激情| 国产综合色香蕉精品| 日韩精品在线观看网站| 亚洲午夜女主播在线直播| 国产精品丝袜高跟| 精品久久久视频| 亚洲精品一区av在线播放| 91成人在线观看国产| www.欧美精品一二三区| 亚洲在线www| 国产精品海角社区在线观看| 国产成人精品久久二区二区| 欧美一区二区色| 欧美国产日韩精品| 高清日韩电视剧大全免费播放在线观看| 日韩中文娱乐网| 国产精品久久久久久久久久新婚| 青青草精品毛片| 91精品一区二区| 91精品在线国产| 欧美激情一区二区三区久久久| 午夜精品一区二区三区视频免费看| 国产精品久在线观看| 国产精品成人在线| 狠狠爱在线视频一区| 亚洲老板91色精品久久| 亚洲一区二区三区毛片| 成人精品一区二区三区| 久久综合亚洲社区| 国产精品麻豆va在线播放| 国产在线a不卡| 日韩黄在线观看| 欧美精品videosex牲欧美| 国产精品久久久久久久久久| 欧美午夜丰满在线18影院| 亚洲天堂网站在线观看视频| 2018日韩中文字幕| 九九热这里只有精品免费看| 亚洲字幕一区二区| 国产成人精品久久二区二区| 人人爽久久涩噜噜噜网站| 51ⅴ精品国产91久久久久久| 国产精品久久久久久久美男| 亚洲精品欧美极品| 精品久久久久久亚洲国产300| 欧美另类极品videosbestfree| 亚洲精品av在线播放| 精品日本高清在线播放| 国产精品精品久久久久久| 久久亚洲电影天堂| 亚洲偷欧美偷国内偷| 欧美电影免费观看高清完整| 欧美大胆在线视频| 欧美日韩加勒比精品一区| 欧美激情videoshd| 久久综合电影一区| 日韩hd视频在线观看| 国产在线观看精品一区二区三区| 久久久成人精品| 2018日韩中文字幕| 国产精品欧美日韩一区二区| 久久久之久亚州精品露出| 国产成人精品一区二区在线| 国产精品久久久久久久久男| 亚洲无av在线中文字幕| 国产一区二区三区18| 国产成人精品最新| 精品美女久久久久久免费| 日韩亚洲欧美中文在线| 91精品国产综合久久香蕉最新版| 2019最新中文字幕| 久久久97精品| 欧美精品日韩三级| 国产精品免费一区| 亚洲第一在线视频| 久久久久在线观看| 日韩电影大片中文字幕| 成人激情视频网| 亚洲影院在线看| 亚洲精品videossex少妇| 欧美日韩国产综合新一区| 欧美日韩国内自拍| 国产精品久久久久免费a∨大胸| 午夜精品福利视频| 国产精品永久免费观看| 精品国产91久久久| 浅井舞香一区二区| 日韩视频免费大全中文字幕| 狠狠躁夜夜躁人人爽天天天天97| 久久久久久国产精品美女| 亚洲最大av在线| 国产欧洲精品视频| 日本精品一区二区三区在线播放视频| 欧洲日韩成人av| 91地址最新发布| 亚洲国模精品私拍| 2021国产精品视频| 国产午夜精品一区二区三区| 91亚洲精品久久久| 亚洲电影在线观看| 日韩欧美高清在线视频| 亚洲综合视频1区| 福利一区视频在线观看| 欧美日韩免费观看中文| 精品国内亚洲在观看18黄| 在线国产精品视频| 中文字幕综合一区| 国产精品自产拍在线观看中文| 日韩精品极品在线观看播放免费视频| 国产午夜精品麻豆| 91地址最新发布| 精品中文字幕久久久久久| www.久久草.com| 日韩在线视频导航| 国产日韩欧美在线观看| 欧美中文字幕视频| 日韩欧美在线观看| 欧美黑人xxx| 一本色道久久88亚洲综合88| 夜夜狂射影院欧美极品| 亚洲激情视频网站| 亚洲精品乱码久久久久久按摩观| 国产精品va在线播放| 国产成人自拍视频在线观看| 亚洲剧情一区二区| 亚洲欧美制服另类日韩| 欧美日韩中文字幕| 亚洲精品日产aⅴ| 欧日韩不卡在线视频| 中文字幕av一区二区三区谷原希美| 91av网站在线播放| 欧美亚洲在线观看| 青草青草久热精品视频在线网站| 国产一区二区在线播放| 精品美女永久免费视频| 日韩高清有码在线| 欧美成人免费网| 久久夜色精品国产欧美乱| 日韩中文字幕欧美| 丝袜情趣国产精品| 国产综合在线视频| 91综合免费在线| 久久久久久成人精品| 热re99久久精品国产66热| 国产一区二区三区在线观看网站| 2019中文字幕免费视频| 另类色图亚洲色图|