PHP中$_FILES的使用方法及注意事項(xiàng)說(shuō)明
$_FILES:經(jīng)由 HTTP POST 文件上傳而提交至腳本的變量,類似于舊數(shù)組$HTTP_POST_FILES 數(shù)組(依然有效,但反對(duì)使用)詳細(xì)信息可參閱 POST方法上傳
$_FILES數(shù)組內(nèi)容如下:
$_FILES['myFile']['name'] 客戶端文件的原名稱
$_FILES['myFile']['type'] 文件的 MIME類型,需要瀏覽器提供該信息的支持,例如"image/gif"
$_FILES['myFile']['size'] 已上傳文件的大小,單位為字節(jié)
$_FILES['myFile']['tmp_name'] 文件被上傳后在服務(wù)端儲(chǔ)存的臨時(shí)文件名,一般是系統(tǒng)默認(rèn),可以在php.ini的upload_tmp_dir指定,但用 putenv() 函數(shù)設(shè)置是不起作用的
$_FILES['myFile']['error'] 和該文件上傳相關(guān)的錯(cuò)誤代碼,['error'] 是在 PHP 4.2.0版本中增加的,下面是它的說(shuō)明:(它們?cè)赑HP3.0以后成了常量)
UPLOAD_ERR_OK 值:0; 沒(méi)有錯(cuò)誤發(fā)生,文件上傳成功
UPLOAD_ERR_INI_SIZE 值:1; 上傳的文件超過(guò)了 php.ini 中 upload_max_filesize選項(xiàng)限制的值
UPLOAD_ERR_FORM_SIZE 值:2;上傳文件的大小超過(guò)了 HTML 表單中 MAX_FILE_SIZE 選項(xiàng)指定的值
UPLOAD_ERR_PARTIAL 值:3; 文件只有部分被上傳
UPLOAD_ERR_NO_FILE 值:4;沒(méi)有文件被上傳, 值:5; 上傳文件大小為0
注:
1. 文件被上傳結(jié)束后,默認(rèn)地被存儲(chǔ)在了臨時(shí)目錄中,這時(shí)必須將它從臨時(shí)目錄中刪除或移動(dòng)到其它地方,如果沒(méi)有,則會(huì)被刪除。也就是不管是否上傳成功,腳本執(zhí)行完后臨時(shí)目錄里的文件肯定會(huì)被刪除。所以在刪除之前要用PHP的copy() 函數(shù)將它復(fù)制到其它位置,此時(shí),才算完成了上傳文件過(guò)程。
2. 在 PHP 4.1.0 版本以前該數(shù)組的名稱為 $HTTP_POST_FILES,它并不像$_FILES 一樣是自動(dòng)全局變量。PHP 3 不支持 $HTTP_POST_FILES數(shù)組。
3. 用form上傳文件時(shí),一定要加上屬性內(nèi)容enctype="multipart/form-data",否則用$_FILES[filename]獲取文件信息時(shí)會(huì)報(bào)異常。
<form enctype="multipart/form-data" action="URL"method="post">
<input name="myFile" type="file">
<input type="submit"value="上傳文件">
</form>
相關(guān)文章
PHP編輯器PhpStrom運(yùn)行緩慢問(wèn)題
本文主要介紹了解決PHP編輯器PhpStrom運(yùn)行緩慢問(wèn)題的方法,具有很好的參考價(jià)值,下面跟著小編一起來(lái)看下吧2017-02-02
一個(gè)基于PDO的數(shù)據(jù)庫(kù)操作類(新) 一個(gè)PDO事務(wù)實(shí)例
原先已經(jīng)寫(xiě)過(guò)一個(gè)PDO的數(shù)據(jù)庫(kù)操作類,這次只是在原先基礎(chǔ)上進(jìn)行修改。2011-07-07
如何寫(xiě)php守護(hù)進(jìn)程(Daemon)
這篇文章主要介紹了如何寫(xiě)php守護(hù)進(jìn)程Daemon,2015-12-12
php通過(guò)pecl方式安裝擴(kuò)展的實(shí)例講解
下面小編就為大家分享一篇php通過(guò)pecl方式安裝擴(kuò)展的實(shí)例講解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-02-02

