PHP實現大文件上傳和下載


一提到大文件上傳,首先想到的是啥???

沒錯,就是修改php.ini文件里的上傳限制,那就是upload_max_filesize。修改成合適參數我們就可以進行愉快的上傳文件了。當然啦,這是一般情況下的操作,咱們可以考慮下50M的話,這樣修改還好使么???

結果不言而喻,如果不信邪的看官可以動手試下。那么這時候我們就要考慮了,為什么會失敗呢?通過錯誤提示或者正常思維來思考的話,我們首先想到的是,這個文件到底有沒有被上傳到服務器上呢?

嘿嘿,到這里我們就應該知道,限制在哪里了。沒錯就是表單上傳的大小受到了限制。這時候我們就要修改php.ini里的post_max_size參數了。

到這里呢,在網絡正常的情況下,基本上不會出現什么問題了。但是,你懂得,我們作為一名programer,怎么可能對非正常情況沒有准備。

這時候我們就要修改php運行最大時間max_execution_time還有php接收數據所需的最大時間max_input_time再來就是最大內存memory_limit這三個參數了。修改為適合自己的程序的數值,就可以暢快的運行了。

還有萬一中的情況,你的大文件上傳程序沒有成功運行的話,各位不妨考慮下服務器的限制。我用的Nginx,所以我在我的配置文件中修改了client_max_body_size這個參數。這是用來限制客戶端上傳文件大小的。

好啦,到這里呢,大部分情況下的文件上傳應該都可以解決了。如果還是有問題的話,各位,請與我私信,大家共同解決。如果感覺不錯的話,請多多點贊支持哦。。。

SQL腳本:

http://bbsres2.ncmem.com/ff8cf2d6.png

單個文件上傳

http://bbsres2.ncmem.com/74d57aa3.png

存儲路徑

http://bbsres2.ncmem.com/2d4b28ee.png

數據庫數據

http://bbsres2.ncmem.com/d80e3012.png

數據庫數據(多個文件及文件夾)

http://bbsres2.ncmem.com/6769872d.jpg

文件和文件夾批量下載

http://bbsres2.ncmem.com/8ccb5b0d.jpg

文件和文件夾下載斷點續傳

http://bbsres2.ncmem.com/eb5b1b6b.jpg

效果:

http://bbsres2.ncmem.com/7cebc171.jpg

文件和文件夾批量上傳

http://bbsres2.ncmem.com/202d5f59.png

 

 

demo下載:http://t.cn/Ai9p3CKQ

教程:http://t.cn/Aipg9uUK

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM