導航:首頁 > 編程語言 > phpini上傳大小

phpini上傳大小

發布時間:2025-01-30 06:15:17

『壹』 php上傳問題 在上傳不成功的情況下,當上傳文件大於10M(大概數)時就會報錯,而不是根據程序提示,

你說的10M應該是php.ini里設置的上傳文件大小限制,而你這個switch判斷是基於表單上傳文件大小來判斷的,兩者毫無相關!
一、超過10M,在php底層處理請求時就直接報錯了,根本執行不到你switch的地方,所以報錯是非預期的
二、超過2M,php能正常執行,所以會按照你switch來報錯

這里,你要搞清楚php的上傳文件大小限制跟form表單上傳文件大小限制的關系

『貳』 如何修改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上傳文件慢

php文件上傳在php.ini中都設置了post為150M上傳100M時間設置0,為什麼我上傳5M文件還是顯示錯誤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的大體積文件,只設置上述四項還一定能行的通。

進一步配置以下的參數

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、代碼優化

代碼優化不僅僅是寫出干凈和清晰的代碼,而是對代碼進行一定的簡化。可以使用ZendOptimizer來自動幫助完成這些繁雜的工作。ZendOptimizer可以從ZendTechnologies的網站免費得到,但必須同意它的許可約定,因為它不是以GPL方式發行的。它的原理很簡單,即通過檢測Zend引擎產生的中間代碼,並對它進行優化,從而獲得更高的執行速度。

2、使用緩存

如果PHP程序的規模很大,那麼提高速度的辦法就是使用緩存。現在已經有許多緩存方案可供選擇,其中包括ZendCache、APC和AfterburnerCache。

3、壓縮網頁內容

影響站點的訪問速度還有1個重要因素,那就是下載速度。解決的辦法就是壓縮網頁內容。對於純文本內容而言,HTTP壓縮技術可壓縮至原大小的40%以下,從而提供60%以上的數據傳輸節約。雖然Web伺服器會因為壓縮導致CPU佔用的略微上升,但可以節約大量用於傳輸的網路IO。

4其它技巧

編程時,使用一些小技巧也可以加快PHP的運行速度:

(1)用i+=1代替i=i+1,既符合c/c++的習慣,效率相對還更高。

(2)盡可能使用PHP內部函數。

(3)能使用單引號字元串時,盡量使用單引號字元串。單引號字元串的效率要高於雙引號字元串。

(4)用foreach代替while遍歷數組,foreach的效率明顯高於while循環,而且不需要調用reset函數。

php遠程上傳文件卡住

你的代碼沒問題,應該是配置問題,檢查php最大上傳大小和磁碟空間是否充足。

thinkphp上傳大文件時如果網路慢的時候就只能上傳部分數據,是否是超時引起?又要如何設置!謝謝

如果是單文件的話絕對實現不了的php不支持斷點續傳如果是多文件的話就沒問題

我寫的php腳本用form上傳文件,在FF和IE下面都正常,但是在safari下面提交頁面刷新很慢,就像未提交成功。

這個因素造成的問題很多,有瀏覽器的問題,網速的問題!IE能上傳正常,說明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」/>控制文件上傳大小時,必須將其放置在文件域之前,否則是不能發揮作用的!

閱讀全文

與phpini上傳大小相關的資料

熱點內容
加密照片怎麼也找不到 瀏覽:794
卸載編譯安裝的java 瀏覽:297
desaes加密怎麼解除 瀏覽:409
最終幻想文件夾為什麼刪不掉 瀏覽:204
java中list的排序 瀏覽:237
php問答網站 瀏覽:924
為什麼蘋果appstore沒有面容了 瀏覽:401
空調銅管重量計演算法 瀏覽:477
linux如何打開軟體 瀏覽:397
基於51單片機的熱水器 瀏覽:698
圖片壓縮成一張圖怎麼解壓 瀏覽:777
還原文件夾英文 瀏覽:369
按摩手掌解壓視頻國外 瀏覽:608
空氣能壓縮機價格 瀏覽:532
php不能上傳大文件 瀏覽:240
消毒水清潔解壓 瀏覽:1000
cpdf閱讀 瀏覽:467
android方案公司 瀏覽:182
linux編寫makefile 瀏覽:488
考研程序員有什麼好處 瀏覽:225