PHP中 FILES的使用及注意事項

2021-06-28 08:10:43 字數 1163 閱讀 3725

$_files: 經由 http post 檔案上傳而提交至指令碼的變數。類似於舊陣列 $http_post_files 陣列(依然有效,但反對使用)。詳細資訊可參閱 post 方法上傳。

$_files陣列內容如下:

$_files['myfile']['name'] 

客戶端檔案的原名稱。

$_files['myfile']['type'] 

檔案的 mime 型別,需要瀏覽器提供該資訊的支援,例如"image/gif"。

$_files['myfile']['size'] 

已上傳檔案的大小,單位為位元組。

$_files['myfile']['tmp_name'] 

檔案被上傳後在服務端儲存的臨時檔名,一般是系統預設。可以在php.ini的upload_tmp_dir 指定,但用 putenv() 函式設定是不起作用的。

$_files['myfile']['error'] 

upload_err_ok 

值:0; 沒有錯誤發生,檔案上傳成功。

upload_err_ini_size 

值:1; 上傳的檔案超過了 php.ini 中 upload_max_filesize 選項限制的值。

upload_err_form_size 

值:2; 上傳檔案的大小超過了 html 表單中 max_file_size 選項指定的值。

upload_err_partial 

值:3; 檔案只有部分被上傳。

upload_err_no_file 

值:4; 沒有檔案被上傳。 

值:5; 上傳檔案大小為0.

注:1. 檔案被上傳結束後,預設地被儲存在了臨時目錄中,這時必須將它從臨時目錄中刪除或移動到其它地方,如果沒有,則會被刪除。也就是不管是否上傳成功,指令碼執行完後臨時目錄裡的檔案肯定會被刪除。所以在刪除之前要用php的 copy() 函式將它複製到其它位置,此時,才算完成了上傳檔案過程。

2. 在 php 4.1.0 版本以前該陣列的名稱為 $http_post_files,它並不像 $_files 一樣是自動全域性變數。php 3 不支援 $http_post_files 陣列。

3. 用form上傳檔案時,一定要加上屬性內容 enctype="multipart/form-data",否則用$_files[filename]獲取檔案資訊時會報異常。

PHP中 FILES的使用及注意事項

files 經由 http post 檔案上傳而提交至指令碼的變數。類似於舊陣列 http post files 陣列 依然有效,但反對使用 詳細資訊可參閱 post方法上傳。files陣列內容如下 files myfile name 客戶端檔案的原名稱。files myfile type 檔案的 ...

PHP 中 FILES的使用及注意事項

files 經由 http post 檔案上傳而提交至指令碼的變數,類似於舊陣列 http post files 陣列 依然有效,但反對使用 詳細資訊可參閱 post方法上傳 files陣列內容如下 files myfile name 客戶端檔案的原名稱 files myfile type 檔案的 ...

PHP中 FILES的使用及注意事項

files 經由 http post 檔案上傳而提交至指令碼的變數。類似於舊陣列 http post files 陣列 依然有效,但反對使用 詳細資訊可參閱 post方法上傳。files陣列內容如下 files myfile name 客戶端檔案的原名稱。files myfile type 檔案的 ...