首頁 >後端開發 >php教程 >php $_FILES的使用方法

php $_FILES的使用方法

怪我咯
怪我咯原創
2017-07-12 15:48:091853瀏覽

本篇文章主要是對PHP中$_FILES的使用方法及注意事項進行了介紹,需要的朋友可以過來參考下,希望對大家有所幫助

$ _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'] 和該檔案上傳相關的錯誤代碼,['error'] 是在PHP 4.2. 0版中增加的,以下是它的說明:(它們在PHP3.0以後變成了常數)

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

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

#110SI_ERR_FORM_PR_ERR_FORM 表格超過了2017471307(FvL_FORM_FI;選項指定的值       

#UPLOAD_ERR_PARTIAL 值:3; 檔案只有部分上傳                                 

#######註:###############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]取得文件資訊時會報異常。 ###
<html>
<head>
<meta charset="utf-8">
<title>菜鸟教程(runoob.com)</title>
</head>
<body>

<form action="upload_file.php" method="post" enctype="multipart/form-data">
	<label for="file">文件名:</label>
	<input type="file" name="file" id="file"><br>
	<input type="submit" name="submit" value="提交">
</form>

</body>
</html>
###將以上程式碼儲存到 form.html 檔案中。 ######有關上面的 HTML 表單的一些注意項目列舉如下:######ff9c23ada1bcecdd1a0fb5d5a0f18437 標籤的 enctype 屬性規定了在提交表單時要使用哪種內容類型。表單需要二進位資料時,例如檔案內容,請使用 "multipart/form-data"。 ######d5fd7aea971a85678ba271703566ebfd 標籤的 type="file" 屬性規定了應該把輸入當作檔案來處理。舉例來說,在瀏覽器中預覽時,會看到輸入框旁邊有一個瀏覽按鈕。 ######註解:允許使用者上傳檔案是一個巨大的安全風險。請僅允許可信任的使用者執行檔案上傳操作。 ###

以上是php $_FILES的使用方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn