首頁 > 後端開發 > php教程 > PHP實作檔案上傳與下載

PHP實作檔案上傳與下載

WBOY
發布: 2016-07-29 08:49:43
原創
1301 人瀏覽過

檔案上傳原理:
將客戶端的檔案上傳到伺服器端,再將伺服器端的暫存檔案移到指定目錄即可。
客戶端配置:
1.表單頁
2.表單的發送方式為post
3.新增enctype=”multipart/form-data”

$_FILES中保存著上傳檔案的資訊
name:上傳檔案的名稱
type:上傳檔案的MIME類型
tmp_name:上傳到伺服器上的暫存檔案名稱
size:上傳檔案大小
error:上傳檔案的錯誤號碼

move_uploaded_file(tm ame, destination):將伺服器上臨時檔案移至指定目錄,並命名。 如: move_uploaded_file(t
m
p e,"up loads/"); 還有: copy(src,. 伺服器端配置: file_uploads = on ,支援HTTP上傳 upload_tmp_dir= ,臨時檔案保存的目錄 upload_max_filesize = 2M,允許上傳檔案的最大值 max_file_uploads = 20,允許一次上傳的最大檔案數 post_max_size = 8M,POST方式發送資料的最大值max_execution_time = -1,設定了腳本被解析器終止之前允許的最大執行時間,單位為秒,防止程式寫的不好而佔盡伺服器資源 max_input_time = 60,腳本解析輸入資料允許的最大時間,單位是秒 max_input_nesting_level = 64,設定輸入變數的巢狀深度 max_input_vars = 1000,接受多少輸入的變數(限制分別適用於

G _POST,$_COOKIE超全局變數)指令的使用減輕了以哈希碰撞來進行拒絕服務攻擊的可能性。如有超過指令指定數量的變量,將會導致E_WARING的產生,更多的輸入變數將會從請求中截斷。 memory_limit = 128M,最大單線程的獨立記憶體使用量。也就是一個web請求,給與線程最大的記憶體使用量的定義。 注意:在客戶端限制的程式碼,可以透過在瀏覽器中修改程式碼,而使限制沒有用。所以限制都應該在伺服器端。

伺服器端限制:
限制上傳檔案大小(透過size)
限制上傳檔案類型(in_array(後綴,陣列),判斷檔案後綴是否在指定規定類型的陣列裡)
偵測是否為真實圖片類型(getimagesize)
偵測是否為HTTP POST方式上傳(is_uploaded_file,傳回true表示是透過PHP的post方式上傳的)

產生唯一字串:

md5(uniqid(microtime(true),true))


').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i
').text(i)); }; $numbering.fadeIn(1700); }); });
以上就介紹了PHP實作檔案上傳與下載,包含了檔案上傳,php方面的內容,希望對PHP教學有興趣的朋友有幫助。

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板