轉 PHP檔案上傳 FILES陣列各鍵值含義說明

2022-06-12 16:45:08 字數 1427 閱讀 9662

檔案上傳的html表單:

<formenctype="multipart/form-data" action="" method="post">

<inputtype="hidden" name="max_file_size" value="1000">

<inputname="myfile" type="file">

<inputtype="submit" value="提交">

注意:enctype="multipart/form-data"這個是必須要寫的,否則$_files陣列是空的,得不到值.

$_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'] 和該檔案上傳相關的錯誤**。

['error'] 是在 php 4.2.0 版本中增加的。下面是它的說明:(它們在php3.0以後成了常量) 

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. 

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

php上傳檔案 FILES注意點

1.頁面上傳需注意 from表單中對於enctype屬性值的解釋 該屬性規定在傳送到伺服器之前應該如何對表單資料進行編碼值描述 在傳送前編碼所有字元 預設 multipart form data 不對字元編碼。在使用包含檔案上傳控制項的表單時,必須使用該值。text plain 空格轉換為 加號,但...

PHP檔案上傳 FILES陣列各鍵值含義說明

檔案上傳的html表單 注意 enctype multipart form data 這個是必須要寫的,否則 files陣列是空的,得不到值.files陣列內容如下 files myfile name 客戶端檔案的原名稱。files myfile type 檔案的 mime 型別,需要瀏覽器提供該資...

php 檔案上傳 FILES 錯誤碼

假設檔案上傳欄位的名稱file name,則 files file name error 有以下幾種型別 1 upload err ok 其值為 0,沒有錯誤發生,檔案上傳成功。2 upload err ini size 其值為 1,上傳的檔案超過了 php.ini 中 upload max fil...