PHP程式碼中是如何實現檔案上傳的?
這裡使用PHP的全域性陣列$_FILES來實現檔案上傳:
$_FILES[“file”][“name”] - 被上傳檔案的名稱
$_FILES[“file”][“type”] - 被上傳檔案的型別
$_FILES[“file”][“size”] - 被上傳檔案的大小,以位元組計
$_FILES[“file”][“tmp_name”] - 儲存在伺服器的檔案的臨時副本的名稱
$_FILES[“file”][“error”] - 由檔案上傳導致的錯誤程式碼
HTML程式碼:
PHP程式碼:
if (!empty($_FILES)) {
// 限制檔案大小
$file_size =
file_size > 1024 * 1024 * 2) {
echo ‘檔案大小超過限制’;
exit;
}
// 限制檔案上傳型別
$file_type = $_FILES[“file”][“type”];
file_type, $file_type_arr)) {
echo ‘上傳檔案型別錯誤’;
exit;
}
// 檔案上傳到伺服器臨時資料夾之後的檔名
$tem_name = $_FILES[‘file’][‘tmp_name’];
// 取得檔案字尾名
$file_fix = explode(’.’, $_FILES[‘file’][‘name’])[1] ? explode(’.’, $_FILES[‘file’][‘name’])[1] : ‘png’;
// 檔案重新命名,這裡自動生成一個不重複的名字,方便使用
$name = md5(uniqid(md5(microtime(true)), true)) . ‘.’ . $file_fix;
// 要存放檔案的目錄定義,這裡按日期分開儲存
KaTeX parse error: Expected group after '_' at position 20: …_dir = dirname(_̲_FILE__) . '/up…file_dir)) {
mkdir(KaTeX parse error: Expected 'EOF', got '}' at position 28: …55, true); }̲ // 移動文…tem_name, $file_dir . $name);
echo ‘上傳成功’;
exit;
} else {
echo ‘檔案上傳失敗’;
exit;
}
文章來自:https://www.itjmd.com/news/show-4308.html