php實現文件上傳需要通過全局變量(數組):$_FILES 結合?move_uploaded_file 函數來實現。
move_uploaded_file函數(只對POST方式生效):
其中move_uploaded_file函數語法:move_uploaded_file(需要移動的文件,移動的目的地址);
如果移動成功范圍true,否則返回false。?
$_FILES全局變量(數組):
$_FILES['input文件上傳控件設置的name屬性的值']['name']:獲取上傳文件的名稱
$_FILES['input文件上傳控件設置的name屬性的值']['type']:獲取上傳文件的MIME類型
$_FILES['input文件上傳控件設置的name屬性的值']['size']:獲取上傳文件的大小(以大B字節為單位)
$_FILES['input文件上傳控件設置的name屬性的值']['tmp_name']:獲取上傳的文件在服務器的臨時文件名
$_FILES['input文件上傳控件設置的name屬性的值']['error']:獲取上傳錯誤代碼
簡單的上傳案例(index.html與up.php處于同一級目錄):
index.html代碼:
<!DOCTYPE html>
<html><head><title>文件上傳</title><meta charset="utf-8"></head><body><form action="./up.php" method="post" enctype="multipart/form-data"><div><input type="file" name="upfile"><input type="submit"></div></form></body>
</html>
up.php代碼:
<?php $path = './up/'.$_FILES['upfile']['name']; //定義文件的保存位置(以自定義路徑+文件的原文件名為例)if(move_uploaded_file($_FILES['upfile']['tmp_name'], $path)) { //獲取上傳文件在服務器上的臨時名稱,將上傳的臨時文件移動到定義的位置。如果將臨時文件移動到了定義的位置,則提示上傳成功,否則提示上傳失敗echo "上傳成功";
} else{ echo "上傳失敗";
}?>