程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> 挖掘PHP上傳文件類型原理實現

挖掘PHP上傳文件類型原理實現

編輯:關於PHP編程

我們都知道PHP有強大的功能,給我帶來了許多方便,我們這裡來看看PHP上傳文件類型的實現。PHP支持上傳文件的功能,但並不是所有支持PHP的網站都支持此功能,特別是免費的網站。

實現上傳,首先要在HTML上加入上傳文件的“<FORM>”表格。

  1. <form method=post action="upload.php" ENCTYPE="multipart/form-data">  
  2. <input type="file" name="upload_file">  
  3. <input type="submit" name="submit" value="上傳文件"> 

用PHP上傳文件類型時,需要對內容作詳細的檢查,例如是否容許讀寫文件,文件格式、文件大小是否在你指定的大小內等。

  1. <?  
  2. $file_size_max = 1000000;  
  3. // 限制文件上傳最大容量(bytes)  
  4. $store_dir = "/public/www/upload/";  
  5. // 上傳文件的儲存位置  
  6. $accept_overwrite = true;  
  7. //允許讀寫文件  
  8. // 檢查文件大小  
  9. if ($upload_file_size > $file_size_max) {  
  10. echo "對不起,你的文件容量大於規定";  
  11. exit;  
  12. }  
  13. // 檢查讀寫文件  
  14. if (file_exists($store_dir . $upload_file_name) &&&& !$accept_overwrite) {  
  15. echo "文件已存在,不能再復制";  
  16. exit;  
  17. }  
  18. //復制文件到指定目錄  
  19. if (! @ copy($upload_file,$store_dir . $upload_file_name)) {  
  20. echo "復制文件失敗";  
  21. exit;  
  22. }  
  23. echo "上傳文件完成";  
  24. ?> 

需要注意的是,PHP上傳文件類型時候是將文件復制到服務器臨時目錄(temp),然後利用PHP的“copy()”函數將文件由臨時目錄復制到你指定的儲存目錄。由於程序會使用臨時目錄來進行工作,如果服務器因考慮安全問題而封鎖了以上的功能,你就無法使用 PHP的上傳功能。另外,上傳的文件目錄亦需要設定文件模式為777(CHMOD 777) ,否則PHP就無權讀寫文件。


  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved