php 上傳大文件主要涉及配置upload_max_filesize和post_max_size兩個選項


轉自: http://blog.sina.com.cn/s/blog_6c739e63010137ui.html

 

php手冊上傳錯誤資料:http://php.net/manual/zh/features.file-upload.errors.php

http://php.net/upload-max-filesize

Maximum number of files that can be uploaded via a single request

max_file_uploads = 20  :單個請求時,允許上傳的最大文件數 ;

Maximum allowed size for uploaded files.

upload_max_filesize = 64M,允許上傳你的最大文件大小 ; 

; Maximum size of POST data that PHP will accept.
; Its value may be 0 to disable the limit. It is ignored if POST data reading
; is disabled through enable_post_data_reading.

post_max_size = 3M, 表單允許上傳的最大文件大小,官方解釋:http://php.net/post-max-size

 
總結:php.ini配置文件中的默認文件上傳大小為2M, 默認upload_max_filesize = 2M,即文件上傳的大小為2M,如果你想上傳超過8M的文件,比如20M,你必須設定upload_max_filesize = 20M。但是光設置upload_max_filesize = 20M還是無法實現大文件的上傳功能,你必須修改php.ini配置文件中的post_max_size選項,其代表允許POST的數據最大字節長度,默 認為8M。如果POST數據超出限制,那么$_POST和$_FILES將會為空。要上傳大文件,你必須設定該選項值大於 upload_max_filesize指令的值,我一般設定upload_max_filesize和post_max_size值相等。另外如果啟用 了內存限制,那么該值應當小於memory_limit選項的值。

 文件上傳的其他注意事項

  在上傳大文件時,你會有上傳速度慢的感覺,當超過一定的時間,會報腳本執行超過30秒的錯誤,這是因為在php.ini配置文件中max_execution_time配置選項在作怪,其表示每個腳本最大允許執行時間(秒),0 表示沒有限制。你可以適當調整max_execution_time的值,不推薦設定為0。


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com