php 檔案上傳類

2022-05-21 16:24:15 字數 3100 閱讀 8908

<?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...