當前位置:首頁 » 文件管理 » php設置文件上傳大小

php設置文件上傳大小

發布時間: 2022-06-15 16:46:48

⑴ 如何獲得php配置文件上傳文件大小

1、php.ini:upload_max_filesize 所上傳的文件的最大大小。默認值2M。

2、php.ini:memory_limit 本指令設定了一個腳本所能夠申請到的最大內存位元組數,默認值8M。如果不需要任何內存上的限制,必須將其設為 -1。如果內存不夠,則可能出現錯誤:Fatal error: Allowed memory size of X bytes exhausted (tried to allocate Y bytes)

3、php.ini:post_max_size 設定POST數據所允許的最大大小。此設定也影響到文件上傳。要上傳大文件,該值必須大於 upload_max_filesize。

⑵ 如何設置thinkphp上傳大文件

1、伺服器支持的最大文件大小,就是PHP支持的最大文件大小;

2、上傳50M,客戶端也不可能在短時間上傳完畢的,伺服器對PHP腳本有執行超時限制,超過該時間伺服器會強行中止正在執行的程序,默認是30秒。當然除了直接配置伺服器外,也可以通過
ini_set (當伺服器禁用此函數時候是無效的) 或 set_time_limit(當PHP運行在安全模式下時此函數無效) 設置。

結論:你的這個需求,還得通過伺服器才能得到根本解決。

⑶ 如何通過配置php文件限制上傳文件的大小

在網站開發的過程中,為了確保能夠充分利用伺服器的空間,在開發上傳功能時,必須對上傳文件的大小進行控制。那麼我們如何進行對上傳文件的大小進行控制呢?

控制文件的大小可以從兩個方面入手:

第一個是在PHP的配置文件php.ini中對上傳文件進行控制,如果上傳文件超過它指定的范圍,那麼執行上傳就會識別。

第二個是在PHP配置文件允許的范圍內,在程序中對上傳文件的大小進行控制!

一:通過配置文件控制上傳文件

PHP中通過php.ini文件對上傳文件進行控制,包括是否支持上傳,上傳文件的臨時文件目錄,上傳文件的大小,指令執行時間,指令分配的內存空間。

在php.ini中,定義 File Uploads項,完成對上傳相關選項的設置。上傳相關選項的含義如下:

file_uploads:如果值是 no,說明伺服器支持上傳文件,如果為off ,那麼則不支持。一般默認是支持的,這個不用修改!

upload_tmp_dri:上傳文件臨時目錄。文件被成功上傳之前,文件首先存放到伺服器端的臨時目錄中。多數使用系統默認目錄,但是也可以自行設置!

upload_max_filesize:伺服器允許上傳文件的最大值,以MB為單位,系統默認為2MB,如果網站需要上傳超過2MB的數據,那麼就要修改這個值!

上述是php.ini中 File_Uploads項中與上述相關參數設置說明,除了File_Uploads項中的內容外,在php.ini中還有其他幾個選項會影響到文件的上傳~

max_execution_time:PHP中一個指令所能執行的最大時間,單位為秒。該選項在上傳超大文件時必須要修改,否則即使上傳文件在伺服器允許的范圍內,但是若超過了指令所能執行的最大時間,仍然無法實現上傳~

memory_limit:PHP中一個指令所分配的內存空間,單位是 MB 。它的大小同樣會影響得到超大文件的上傳!

二:在程序中控制上傳文件

在客戶端控制上傳文件應用的是 form 表單中的 enctype 和 method屬性以及隱藏域 MAX_FILE_SIZE。

enctype = 「multipart/form-data」:指定表單編碼數據方式。

method = 「post」:指定數據的傳輸方式。

<input type = "hidden" name="MAX_FILE_SIZE" value=「10000」/>:通過隱藏域控制上傳文件的大小(單位為位元組),該值不能超過php.ini配置文件中 upload_max_filesize 選項設置的值,它不能喝完全控制上傳文件的大小。只是可以避免一些不必要的麻煩。

技巧:

在應用隱藏域<input type = "hidden" name="MAX_FILE_SIZE" value=「10000」/>控制文件上傳大小時,必須將其放置在文件域之前,否則是不能發揮作用的!

⑷ 如何設置PHP上傳文件的最大值

不限制我不明白。
但是可以通過修改php.ini配置文件來達到更改上傳文件的大小
一個是 Upload_max_filesize 允許上傳的最大大小。單位M, Exp:50M
一個是 post_max_size:表單上允許的文件最大大小。單位M,Exp:50M
他們兩好像有一個要比其中一個的數值大,我記不太清了。
應該是upload_max_filesize的數值得大於post_max_size的數值。這兩個你研究下吧。

⑸ php伺服器文件上傳大小被限制如何修改

  1. 打開php.ini,

    首先找到file_uploads = on
    ;是否允許通過HTTP上傳文件的開關。默認為ON即是開
    upload_tmp_dir
    ;文件上傳至伺服器上存儲臨時文件的地方,如果沒指定就會用系統默認的臨時文件夾
    upload_max_filesize = 8m
    ;即允許上傳文件大小的最大值。默認為2M
    post_max_size = 8m
    ;指通過表單POST給PHP的所能接收的最大值,包括表單里的所有值。默認為8M
    一般地,設置好上述四個參數後,上傳<=8M的文件是不成問題,在網路正常的情況下。但如果要上傳>8M的大體積文件,只設置上述四項還一定能行的通。

  2. 進一步配置以下的參數
    max_execution_time = 600
    ;每個PHP頁面運行的最大時間值(秒),默認30秒
    max_input_time = 600
    ;每個PHP頁面接收數據所需的最大時間,默認60秒
    memory_limit = 8m
    ;每個PHP頁面所吃掉的最大內存,默認8M
    把上述參數修改後,在網路所允許的正常情況下,就可以上傳大體積文件了
    max_execution_time
    = 600
    max_input_time = 600
    memory_limit = 32m
    file_uploads =
    on
    upload_tmp_dir = /tmp
    upload_max_filesize = 32m
    post_max_size =
    32m

⑹ 如何讓PHP上傳超大文件

1.在php.ini修改上傳文件的大小
打開php.ini,首先找到(前4個夠用了)
file_uploads = on ;是否允許通過HTTP上傳文件的開關。默認為ON即是開
upload_tmp_dir ;文件上傳至伺服器上存儲臨時文件的地方,如果沒指定就會用系統默認的臨時文件夾
upload_max_filesize = 8m ;望文生意,即允許上傳文件大小的最大值。默認為2M
post_max_size = 8m ;指通過表單POST給PHP的所能接收的最大值,包括表單里的所有值。默認為8M
一般地,設置好上述四個參數後,上傳<=8M的文件是不成問題,在網路正常的情況下。
但如果要上傳>8M的大體積文件,只設置上述四項還一定能行的通。
進一步配置以下的參數
max_execution_time = 600 ;每個PHP頁面運行的最大時間值(秒),默認30秒
max_input_time = 600 ;每個PHP頁面接收數據所需的最大時間,默認60秒
memory_limit = 8m ;每個PHP頁面所吃掉的最大內存,默認8M
把上述參數修改後,在網路所允許的正常情況下,就可以上傳大體積文件了
max_execution_time = 600
max_input_time = 600
memory_limit = 32m
file_uploads = on
upload_tmp_dir = /tmp
upload_max_filesize = 32m
post_max_size = 32m
2如果還是解決不了.
nginx修改上傳文件大小限制
在 /etc/nginx/conf.d/下 找到你的配置文件 在location中加上這樣一段代碼
location / {
root html;
index index.html index.htm;
client_max_body_size 5000m;
}
切記!!!修改完配置文件要重啟!重啟!重啟!

⑺ 如何修改PHP上傳文件大小限制

1. 在php.ini中,做如下修改:
file_uploads = on
upload_tmp_dir = /home/upload
upload_max_filesize = 4000M
post_max_size = 4000M
一般地,設置好上述四個參數後,上傳<=8M的文件是不成問題,在網路正常的情況下。
但如果要上傳>8M的大體積文件,只設置上述四項還一定能行的通。除非你的網路真有100M/S的上傳高速,否則你還得關心關心下面的參數:
max_execution_time = 600
max_input_time = 600
memory_limit = 128M

2. 在要確認上傳的 <form> 里加入以下行:
<input type="hidden" name="MAX_FILE_SIZE" value="4000000000">
3. $_FILES["userfile"]["error"]返回值說明:
$_FILES['teacher_pic']['error'] = 1 文件大小超過了PHP.ini中的文件限制
$_FILES['teacher_pic']['error'] = 2 文件大小超過了瀏覽器限制
$_FILES['teacher_pic']['error'] = 3 文件部分被上傳
$_FILES['teacher_pic']['error'] = 4 沒有找到要上傳的文件
$_FILES['teacher_pic']['error'] = 5 伺服器臨時文件夾丟失
$_FILES['teacher_pic']['error'] = 6 文件寫入到臨時文件夾出錯
$_FILES['teacher_pic']['error'] = -1 末充許的類型
$_FILES['teacher_pic']['error'] = -2 文件過大,上傳文件不能超過{$this->maxSize}個位元組
$_FILES['teacher_pic']['error'] = -3 上傳失敗
$_FILES['teacher_pic']['error'] = -4 建立存放上傳文件目錄失敗,請重新指定上傳目錄
$_FILES['teacher_pic']['error'] = -5 必須指定上傳文件的路徑

⑻ 求php怎麼實現web端上傳超大文件

加大PHP上傳文件大小的限制,是通過修改PHP.INI文件來實現,但是這個支持是有限度的,因為WEB協議本為下載而生,超大文件的上傳是FTP的專利。

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最大能傳多大的文件

默認只能傳最大 2M 的文件。

不過,可以配置php.ini文件,修改上傳文件大小的限制。

配置php.ini文件 (以上傳500M以下大小的文件為例)
查找以下選項並修改->
file_uploads = On ;打開文件上傳選項
upload_max_filesize = 500M ;上傳文件上限

如果要上傳比較大的文件,僅僅以上兩條還不夠,必須把伺服器緩存上限調大,把腳本最大執行時間變長
post_max_size = 500M ;post上限
max_execution_time = 1800 ; Maximum execution time of each script, in seconds腳本最大執行時間
max_input_time = 1800 ; Maximum amount of time each script may spend parsing request data
memory_limit = 128M ; Maximum amount of memory a script may consume (128MB)內存上限

熱點內容
招標伺服器雲 發布:2024-05-19 20:04:19 瀏覽:583
搭建小米雲伺服器 發布:2024-05-19 19:43:17 瀏覽:130
蘋果手機備忘錄怎麼加密 發布:2024-05-19 18:57:57 瀏覽:16
光榮腳本 發布:2024-05-19 18:57:48 瀏覽:997
pythonjson字元串 發布:2024-05-19 18:51:43 瀏覽:253
什麼是伺服器廠商介紹 發布:2024-05-19 18:50:09 瀏覽:371
伺服器網卡硬體型號怎麼看 發布:2024-05-19 18:36:41 瀏覽:666
修改pve伺服器ip 發布:2024-05-19 18:31:52 瀏覽:469
微信密碼忘記了如何取出裡面的錢 發布:2024-05-19 18:27:35 瀏覽:330
vs2005反編譯 發布:2024-05-19 18:26:34 瀏覽:364