php檔案上傳方式,PHP實現檔案分片上傳的方法

2021-10-25 21:36:42 字數 2139 閱讀 9278

php用超級全域性變數陣列$_files來記錄檔案上傳相關資訊的。

1.file_uploads=on/off

是否允許通過http方式上傳檔案

2.max_execution_time=30

允許指令碼最大執行時間,超過這個時間就會報錯

3.memory_limit=50m

設定指令碼可以分配的最大記憶體量,防止失控指令碼占用過多記憶體,此指令只有在編譯時設定了。

--enable-memory-limit標誌的情況下才生效

4.upload_max_filesize=20m

允許上傳檔案的最大大小,此指令必須小於post_max_size

5.upload_tmp_dir

上傳檔案臨時存放目錄

6.post_max_size=30m

允許post方式可以接受最大大小

$_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上傳檔案大小限制的方法

1. 一般的檔案上傳,除非檔案很小。就像乙個5m的檔案,很可能要超過一分鐘才能上傳完。

但在php中,預設的該頁最久執行時間為 30 秒.就是說超過30秒,該指令碼就停止執行.

這就導致出現無法開啟網頁的情況,這時我們可以修改 max_execution_time

在php.ini裡查詢

max_execution_time

預設是30秒.改為

max_execution_time = 0

0表示沒有限制

2. 修改 post_max_size 設定 post 資料所允許的最大大小。此設定也影響到檔案上傳。

php預設的post_max_size 為2m.如果 post 資料尺寸大於 post_max_size $_post 和 $_files superglobals 便會為空.

查詢 post_max_size .改為

post_max_size = 150m

3. 很多人都會改了第二步,但上傳檔案時最大仍然為 8m。

為什麼呢.我們還要改乙個引數upload_max_filesize 表示所上傳的檔案的最大大小。

查詢upload_max_filesize,預設為8m改為

upload_max_filesize = 100m

另外要說明的是,post_max_size 大於 upload_max_filesize 為佳.

上傳效果展示:

php 檔案上傳校驗 php實現檔案上傳基本驗證

html部分 檔案上傳 php服務端部分 header content type text html charset utf 8 預定義變數 print r files 可以顯示錯誤號,根據錯誤號來定位錯誤資訊 filename files myfile name type files myfile...

實現php檔案上傳

php上傳檔案非常簡單,你需要乙個上傳的html檔案 以上範例中的 url 應該被換掉,指向乙個真實的 php 檔案。max file size 隱藏字段 單位為位元組 必須放在檔案輸入字段之前,其值為接收檔案的最大尺寸。這是對瀏覽器的乙個建議,php 也會檢查此項。在瀏覽器端可以簡單繞過此設定,因...

PHP上傳檔案實現

實現 見下。upload.html upload.php uploaddir files 設定檔案儲存目錄 注意包含 type array jpg gif bmp jpeg png 設定允許上傳檔案的型別 獲取檔案字尾名函式 function fileext filename 生成隨機檔名函式 fu...