亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 語言 > PHP > 正文

php文件上傳的應用和原理詳解

2024-09-04 11:44:45
字體:
來源:轉載
供稿:網友

php中上傳文件必須知道幾個技巧,一個必須是由表單post過去的數據,然后由php move_uploaded_file進行接受了,再保存到服務器指定路徑即可。

1.form 標簽 enctype 屬性。

2.$_FILES 系統函數。 //將上傳內容轉換為數組。

3.move_uploaded_file 函數。 //移動存放在緩存文件夾里的上傳文件到指定文件夾。

4.is_uploaded_file 函數。 //判斷是否存在。

1.form 標簽

格式:<form enctype="multipart/form-data" ... ...>

<input name="upfile" type="file">

2.$_FILES 系統函數

$_FILES['name'] //客戶端上傳文件原文件名。

$_FILES['type'] //文件的MIME類型,如:“image/gif”

$_FILES['size'] //上傳文件大小,字節為單位。

$_FILES['tmp_name'] //臨時文件名,一般為默認。

$_FILES['error'] //上傳相關情況代碼(0:成功,1:超過php.ini設置大小。2:超過PHP文件代碼指定大小。3:文件只有部分被上傳。4:沒有文件被上傳。5:上傳文件大小為0。)

3.move_uploaded_file 函數

上傳后移動文件到目標位置的函數

move_uploaded_file(臨時文件,目標位置和文件名;)

4.is_uploaded_file 函數

判斷上傳MIME類型的文件函數

is_uploaded_file(MIME);

實例代碼如下:

  1. <form enctype="multipart/form-data" action="upload.php" method="post">  
  2. <input type="hidden" name="max_file_size" value="100000">  
  3. <input name="userfile" type="file">    
  4. <input type="submit" value="上傳文件">  
  5. </form> 

注意:1、表單中enctype=”multipart/form-data”必須指定,以便讓服務器知道文件帶有常規的表單信息。

2、必須有一個可以設置上傳文件最大長度的表單區域,即允許上傳文件的最大值(按字節計算),它是隱藏值域,即max_file_size,通過設置其Value(值)可以限制上傳文件的大小,避免用戶在花時間等待上傳大文件之后才發現該文件太大了的麻煩。但是一般別人可以繞過這個值,所以安全起見,最好是在php.ini文件中配置upload_max_filesize選項,設定文件上傳的大小,默認是2M

實例代碼如下:

  1. function uploadfile($type,$name,$ext,$size,$error,$tmp_name,$targetname,$upload_dir
  2.     $MAX_SIZE = 2000000; 
  3.     $FILE_MIMES = array('image/pjpeg','image/jpeg','image/jpg','image/gif','image/png'); 
  4.     $FILE_EXTS = array('.jpg','.gif','.png','.JPG','.GIF','.PNG'); 
  5.     $file_path = $upload_dir.$targetname
  6.      
  7.     if(!is_dir($upload_dir)) 
  8.     { 
  9.         if(!mkdir($upload_dir)) 
  10.             die("文件上傳目錄不存在并且無法創建文件上傳目錄"); 
  11.         if(!chmod($upload_dir,0755)) 
  12.             die("文件上傳目錄的權限無法設定為可讀可寫"); 
  13.     } 
  14.      
  15.     if($size>$MAX_SIZE
  16.         die("上傳的文件大小超過了規定大小"); 
  17.     if($size == 0) 
  18.         die("請選擇上傳的文件"); 
  19.     if(!in_array($type,$FILE_MIMES) || !in_array($ext,$FILE_EXTS)) 
  20.         die("請上傳符合要求的文件類型"); 
  21.     if(!move_uploaded_file($tmp_name$file_path)) 
  22.         die("復制文件失敗,請重新上傳"); 
  23.     switch($error
  24.     { 
  25.         case 0: 
  26.             return ; 
  27.         case 1: 
  28.             die("上傳的文件超過了 php.ini 中 upload_max_filesize 選項限制的值"); 
  29.         case 2: 
  30.             die("上傳文件的大小超過了 HTML 表單中 MAX_FILE_SIZE 選項指定的值"); 
  31.         case 3: 
  32.             die("文件只有部分被上傳"); 
  33.         case 4: 
  34.             die("沒有文件被上傳"); 
  35.     } 

如何上傳多個文件?比如同時上傳3個文件,代碼如下:

只需將<input name="userfile" type="file"> 改成

<input name="userfile[]" type="file">

<input name="userfile[]" type="file">

<input name="userfile[]" type="file">

對應的在調用此函數時,$_FILES['userfile']['name'][0],代表第一個文件的相關文件信息,依此類推,其他也一樣。

一些關于php性能配置,有必須時我們也可以修改一下

max_execution_time = 30 ;每個PHP頁面運行的最大時間值(秒),默認30秒

max_input_time = 60 ;每個PHP頁面接收數據所需的最大時間,默認60秒

memory_limit = 128m ;每個PHP頁面所吃掉的最大內存,默認128M,如果覺得小了,可以設置大點,128夠用。

  1. max_execution_time = 600 
  2. max_input_time = 600 
  3. upload_max_filesize = 32m 
  4. post_max_size = 32m 

如果文件大小限制了我們可以如下解決,打開php.ini,首先找到

file_uploads = on ;是否允許通過HTTP上傳文件的開關。默認為ON即是開

upload_tmp_dir ;文件上傳至服務器上存儲臨時文件的地方,如果沒指定就會用系統默認的臨時文件夾

upload_max_filesize = 8m ;望文生意,即允許上傳文件大小的最大值。默認為2M

post_max_size = 8m ;指通過表單POST給PHP的所能接收的最大值,包括表單里的所有值。默認為8M

一般地,設置好上述四個參數后,上傳<=8M的文件是不成問題,在網絡正常的情況下,但如果要上傳>8M的大體積文件,只設置上述四項還一定能行的通,進一步配置以下的參數.

max_execution_time = 600 ;每個PHP頁面運行的最大時間值(秒),默認30秒

max_input_time = 600 ;每個PHP頁面接收數據所需的最大時間,默認60秒

memory_limit = 8m ;每個PHP頁面所吃掉的最大內存,默認8M

把上述參數修改后,在網絡所允許的正常情況下,就可以上傳大體積文件了

  1. max_execution_time = 600 
  2. max_input_time = 600 
  3. memory_limit = 32m 
  4. file_uploads = on 
  5. upload_tmp_dir = /tmp 
  6. upload_max_filesize = 32m 
  7. post_max_size = 32m 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产区亚洲区欧美区| 亚洲影院色在线观看免费| 91sa在线看| 久久中文字幕在线视频| 九九精品在线播放| 欧美激情国产精品| 精品国产福利在线| 久久在精品线影院精品国产| 精品视频在线播放色网色视频| 91九色国产社区在线观看| 97视频免费在线看| 久久久久久久色| 国产精品久久久久久久久久久久| 国产精品稀缺呦系列在线| 久久视频精品在线| 欧美老肥婆性猛交视频| 日韩经典第一页| 精品视频—区二区三区免费| 91成人性视频| 日韩av电影在线免费播放| 亚洲丝袜在线视频| 国产一区二区美女视频| 亚洲欧美日韩高清| 亚洲天堂网站在线观看视频| 日韩av免费网站| 成人国产精品一区二区| 国产精品中文久久久久久久| 亚洲精选中文字幕| 国产成人一区三区| 欧美午夜精品在线| 91亚洲国产成人久久精品网站| 日韩在线观看免费全| 欧美孕妇与黑人孕交| 国产亚洲一区二区精品| 欧美成人精品不卡视频在线观看| 777午夜精品福利在线观看| 国产精品视频xxxx| www.日韩.com| 另类视频在线观看| 九九热视频这里只有精品| 91精品综合视频| 国产一区视频在线| 久久免费视频这里只有精品| 午夜精品一区二区三区在线| 91久久国产综合久久91精品网站| 久久久在线观看| 亚洲2020天天堂在线观看| 国产亚洲a∨片在线观看| 久久久久国产一区二区三区| 亚洲第一色中文字幕| 亚洲欧美精品一区| 亚洲最大中文字幕| 原创国产精品91| 国产91精品久久久久久| 国产一区二区成人| 久久久亚洲精品视频| 亚洲欧洲一区二区三区在线观看| 清纯唯美亚洲综合| 亚洲在线视频福利| 欧美人成在线视频| 国产免费观看久久黄| 免费不卡欧美自拍视频| 日韩小视频在线观看| 91精品国产色综合久久不卡98| 成人性生交大片免费观看嘿嘿视频| 欧美黄色www| 日本一区二区在线播放| 色偷偷88888欧美精品久久久| 久久99热这里只有精品国产| 日韩欧美高清视频| 成人性生交大片免费看视频直播| 国产精品日日摸夜夜添夜夜av| 亚洲二区在线播放视频| 国产精品久久久av久久久| 亚洲第一福利网| 日韩成人性视频| 性欧美xxxx交| 亚洲图片制服诱惑| 一级做a爰片久久毛片美女图片| 中文字幕亚洲国产| 欧美一区深夜视频| 久久精品99无色码中文字幕| 国产精品热视频| 欧美超级免费视 在线| 日韩av在线天堂网| 欧美国产第一页| 亚洲电影天堂av| 欧美高跟鞋交xxxxhd| 日韩在线视频导航| 久久精品99国产精品酒店日本| 日韩美女av在线免费观看| 91亚洲午夜在线| 欧美高清在线播放| 国产美女久久精品香蕉69| 色99之美女主播在线视频| 欧美成人第一页| 欧美激情一二区| 国产精品中文久久久久久久| 日韩欧美精品中文字幕| 国产日韩在线一区| 精品高清美女精品国产区| 久久综合免费视频| 亚洲视频精品在线| 一区二区三区 在线观看视| 亚洲天堂免费观看| 亚洲第一区第一页| 欧美激情一区二区三区久久久| 欧美日韩在线视频一区二区| 日韩欧美在线字幕| 久久精品99无色码中文字幕| 日韩电视剧免费观看网站| 精品露脸国产偷人在视频| 亚洲激情视频在线观看| 亚洲欧美福利视频| 成人激情在线播放| 国产精品高潮呻吟久久av野狼| 欧美一区视频在线| 亚洲91精品在线观看| 亚洲欧美国产日韩天堂区| 一区二区三区四区精品| 欧美亚洲国产另类| 中文字幕久热精品视频在线| 亚洲精品欧美日韩专区| 亚洲国产精品系列| 中文字幕自拍vr一区二区三区| 国产91免费看片| 亚洲一区二区久久| 欧美日韩中国免费专区在线看| 亚洲美女av网站| 国产精品入口免费视频一| 国产精国产精品| 久久亚洲精品网站| 久久影视三级福利片| 亚洲国产精品高清久久久| 久久久亚洲影院你懂的| 中文字幕精品www乱入免费视频| 欧美性猛交xxxx偷拍洗澡| 亚洲欧美日韩国产中文| 国产精品国产三级国产aⅴ9色| 中文字幕一区日韩电影| 久热99视频在线观看| 成人精品网站在线观看| 久久久精品美女| 国产精品va在线播放| 在线看日韩av| 精品少妇v888av| 国产91精品网站| 亚洲欧美中文日韩v在线观看| 成人乱人伦精品视频在线观看| 久久天天躁狠狠躁夜夜躁2014| 久久成人精品一区二区三区| 91免费在线视频网站| 欧美色道久久88综合亚洲精品| 亚洲一区二区久久久久久| 97在线免费观看| 国产在线高清精品| 亚洲激情在线观看视频免费| 狠狠色香婷婷久久亚洲精品| 国产精品视频永久免费播放| 精品久久中文字幕久久av| 成人伊人精品色xxxx视频| 欧美日韩国产一区二区| 亚洲成人av片在线观看| 国产精品视频一区国模私拍|