if(isset($_FILES['image'])) { $image = $_FILES['image']; // 進一步處理文件 }
在上述代碼中,我們通過檢查是否存在 $_FILES['image'],來判斷是否有文件被上傳。如果有文件被上傳,我們將其保存在變量 $image 中,以供進一步處理。
將多個文件進行批量上傳時,我們可以使用相同的鍵名。這樣,在獲取到文件時,我們將得到一個文件數組。下面是一個示例代碼:
if(isset($_FILES['images'])) { $images = $_FILES['images']; foreach($images['name'] as $key =>$name) { $tmp_name = $images['tmp_name'][$key]; $size = $images['size'][$key]; // 進一步處理文件 } }
在上述代碼中,我們使用 foreach 循環遍歷 $_FILES['images']['name'],通過 $key 取回每個文件的具體信息。從 $_FILES['images']['tmp_name'] 數組中取得文件的臨時存儲路徑,通過 $_FILES['images']['size'] 數組獲取文件的大小。這樣,我們可以進一步處理每個文件。
需要注意的是,通過 form-data 上傳的文件,會被保存在服務器的臨時目錄中。如果希望將文件保存在其他位置,需要在 PHP 腳本中進行額外的操作。下面是一個示例代碼,展示了如何將上傳的圖片文件保存在指定位置:
if(isset($_FILES['image'])) { $image_name = $_FILES['image']['name']; $tmp_name = $_FILES['image']['tmp_name']; $target_dir = "./uploads/"; $target_file = $target_dir . basename($image_name); if(move_uploaded_file($tmp_name, $target_file)) { echo "文件上傳成功!"; } else { echo "文件上傳失??!"; } }
在上述代碼中,我們將臨時存儲路徑和目標路徑都保存在變量中。使用 move_uploaded_file 函數,將文件從臨時目錄移動到指定位置。如果移動成功,我們會輸出 "文件上傳成功!",否則輸出 "文件上傳失敗!"。
總而言之,在 PHP 中使用 form-data 中的媒體文件標識,我們需要注意以下幾點:要使用數組形式的字符串作為鍵名;多個文件上傳時,可以使用相同的鍵名,通過數組形式獲取文件;上傳的文件被保存在服務器的臨時目錄中,如果要保存在其他位置,需要額外處理。