檔案上傳類

2021-07-25 17:38:01 字數 2810 閱讀 2809

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

檔案上傳類

檔案上傳類 成員屬性有 需要初始化的成員 檔案上傳路徑,允許上傳字尾,允許上傳的mime,允許上傳的檔案大小,是否啟用隨即名,加上檔案字首,自定義的錯誤號碼和錯誤資訊 要儲存的檔案資訊 檔名,檔案字尾,檔案大小,檔案mime,檔案臨時名 對外公開的方法 uploadfile key 上傳成功返回檔案...

檔案上傳類

注 不要複製以下的 經測試,報內有異常字元,並且定位到 檔案未尾,時有時無極不穩定,應該逐字敲入。檔案fileupload.class.php file fileupload.class.php檔案上傳類fileupload 本類的例項物件用於處理上傳檔案,可以上傳乙個檔案,也可同時處理多個檔案上傳...

多檔案上傳類

多檔案上傳類 修改 linvo 2008 2 15 class more file upload function destruct function show execute message fileerror,filename,filetype,filesize self destruct el...