PHP 檔案上傳下載

來源:互聯網
上載者:User

簡介:這是PHP 檔案上傳下載的詳細頁面,介紹了和php,有關的知識、技巧、經驗,和一些php源碼等。

class='pingjiaF' frameborder='0' src='http://biancheng.dnbcw.info/pingjia.php?id=329769' scrolling='no'>

1. php.ini 配置

;;;;;;;;;;;;;;;;;;;; Resource Limits ;    資源限制;;;;;;;;;;;;;;;;;;;; Maximum execution time of each script, in seconds; http://php.net/max-execution-time; Note: This directive is hardcoded to 0 for the CLI SAPImax_execution_time = 30     ; Maximum amount of time each script may spend parsing request data. It's a good; idea to limit this time on productions servers in order to eliminate unexpectedly; long running scripts. ; Note: This directive is hardcoded to -1 for the CLI SAPI; Default Value: -1 (Unlimited); Development Value: 60 (60 seconds); Production Value: 60 (60 seconds); http://php.net/max-input-timemax_input_time = 60; Maximum input variable nesting level; http://php.net/max-input-nesting-level;max_input_nesting_level = 64; Maximum amount of memory a script may consume (128MB); http://php.net/memory-limitmemory_limit = 128M

max_execution_time每個指令碼頁面完成執行操作的最大時間,單位是秒。如果為-1,則沒有限制

max_input_time每個指令碼頁面處理請求資料的最大時間,單位是秒。如果為-1,則沒有限制

memory_limit一個指令碼頁面所能消耗的最大記憶體

; Maximum size of POST data that PHP will accept.; http://php.net/post-max-sizepost_max_size = 8M 

PHP通過表單POST所能接收的最大值,包括表單裡的所有項。

;;;;;;;;;;;;;;;;; File Uploads ;;;;;;;;;;;;;;;;;; Whether to allow HTTP file uploads.; http://php.net/file-uploadsfile_uploads = On; Temporary directory for HTTP uploaded files (will use system default if not; specified).; http://php.net/upload-tmp-dirupload_tmp_dir = "e:/wamp/tmp"; Maximum allowed size for uploaded files.; http://php.net/upload-max-filesizeupload_max_filesize = 2M

file_uploads是否允許HTTP上傳,預設為on,即為開啟,無需修改

upload_tmp_dir檔案上傳時的臨時儲存目錄。如果沒有指定,會用系統預設的臨時檔案夾

upload_max_filesize允許上傳的檔案的最大值

2. 版面設定 3個條件缺一不可

(1)type屬性設定為file

(2)form的enctype="multipart/form-data"

(3)method="post"

<form action="" method="post" enctype="multipart/form-data">        <input name="filename" type="file"/>        <input type="submit" value="enter"/></form>

<input type="hidden" name="MAX_FILE_SIZE" value="1024000"/>

建議在上傳表單中增加一個hidden隱藏欄位,允許上傳的最大位元組數。當檔案上傳大於1MB時,$FILES中的error值將返回2

3. bool move_uploaded_file(string filename,string destination) 函數是PHP中專門用來上傳檔案的。

filename上傳檔案的臨時檔案名稱,即$_FILES[tmp_name]

destination上傳後儲存的新的路徑和名稱

move_uploaded_file() 作用只是將檔案換個地方儲存,這是出於安全的考慮

bool is_uploaded_file(string filename) 判斷檔案是否為POST上傳

<?phpheader('Content-Type:text/html;charset=utf-8');$tmparr=$_FILES['filename'];if($tmparr['error']==0){if (is_uploaded_file($tmparr['tmp_name'])) {if (move_uploaded_file($tmparr['tmp_name'], $tmparr['name'])) {echo "上傳成功";}else {echo "<script>alert('檔案不合法');history.go(-1);</script>";}}else {echo "<script>alert('非法操作');history.go(-1);</script>";}}else {echo "<script>alert('上傳錯誤,錯誤類型: ".$tmparr['error']."');history.go(-1);</script>";}?>

4. 實現下載 實現下載最常用的方法通過連結下載和通過header()函數下載。

“PHP 檔案上傳下載”的更多相關文章 》

愛J2EE關注Java邁克爾傑克遜視頻站JSON線上工具

http://biancheng.dnbcw.info/php/329769.html pageNo:12

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.