<?php/**file: fileupload.class.php 檔案上傳類fileupload
本類的例項物件用於處理上傳檔案,可以上傳乙個檔案,也可同時處理多個檔案上傳 */
class
fileupload
return
$this
; }
/*** 呼叫該方法上傳檔案
* @param string $filefile 上傳檔案的表單名稱
* @return bool 如果上傳成功返回數true
*/function upload($filefield
)
/*將檔案上傳的資訊取出賦給變數
*/$name = $_files[$filefield]['name'];
$tmp_name = $_files[$filefield]['tmp_name'];
$size = $_files[$filefield]['size'];
$error = $_files[$filefield]['error'];
/*如果是多個檔案上傳則$file["name"]會是乙個陣列
*/if(is_array($name
)) }
else
/*如果有問題,則重新初使化屬性
*/if(!$return
)
$this->setfiles();
}if($return
)
$filenames = $this->newfilename;}}
$this->newfilename = $filenames
; }
$this->errormess = $errors
;
return
$return
;
/*上傳單個檔案處理方法
*/}
else
else
}else
} else
//如果$return為false, 則出錯,將錯誤資訊儲存在屬性errormess中
if(!$return
)
$this->errormess=$this->geterror();
return
$return
; }
}/**
* 獲取上傳後的檔名稱
* @param void 沒有引數
* @return string 上傳後,新檔案的名稱, 如果是多檔案上傳返回陣列
*/public
function
getfilename()
/*** 上傳失敗後,呼叫該方法則返回,上傳出錯資訊
* @param void 沒有引數
* @return string 返回上傳檔案出錯的資訊報告,如果是多檔案上傳返回陣列
*/public
function
geterrormsg()
/*設定上傳出錯資訊
*/private
function
geterror() 時出錯 : ";
switch ($this->errornum) 個位元組"; break
;
case -3: $str .= "上傳失敗"; break
;
case -4: $str .= "建立存放上傳檔案目錄失敗,請重新指定上傳目錄"; break
;
case -5: $str .= "必須指定上傳檔案的路徑"; break
;
default: $str .= "未知錯誤";
}return
$str.'
'; }
/*設定和$_files有關的內容
*/private
function setfiles($name="", $tmp_name="", $size=0, $error=0)
/*為單個成員屬性設定值
*/private
function setoption($key, $val
)
/*設定上傳後的檔名稱
*/private
function
setnewfilename()
else
}/*檢查上傳的檔案是否是合法的型別
*/private
function
checkfiletype()
else
}/*檢查上傳的檔案是否是允許的大小
*/private
function
checkfilesize()
else
}/*檢查是否有存放上傳檔案的目錄
*/private
function
checkfilepath()
if (!file_exists($this->path) || !is_writable($this->path))
}return
true
; }
/*設定隨機檔名
*/private
function
prorandname()
/*複製上傳檔案到指定的位置
*/private
function
copyfile()
else
} else
}}
呼叫方式:
//上傳檔案
public
function
import3action()
else}}
//上傳頭像結束
include
$this->display('filetest.html');
}
php 檔案上傳類
檔案上傳類 2011 9 22 kcj class upfile function uploadfile filefield private function setoptions options array private function setfiles this setoption orig...
php檔案上傳類
檔案上傳的操作類 class upload 獲取副檔名 function getextname 判斷檔案型別 function checktype extname 判斷大小 function checksize 實現檔案上傳的主方法 function main filedatedir fileupl...
PHP 檔案上傳類
fileupload.class.php,其中用到了兩個常量,可在 配置檔案中定義 define root path dirname file 根目錄 define updir uploads 上傳主目錄 上傳檔案類 class fileupload 返回路徑 public function get...