首頁 >後端開發 >php教程 >如何使用'in_array()”在 PHP 中驗證上傳的檔案類型?

如何使用'in_array()”在 PHP 中驗證上傳的檔案類型?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-11-12 13:46:02187瀏覽

How to Validate Uploaded File Types in PHP with `in_array()`?

使用 PHP 上傳指定的檔案類型

在 Web 應用程式中,允許使用者上傳檔案需要仔細考慮安全性和內容驗證。當您想要限制上傳特定檔案類型時,PHP 透過 in_array() 函數提供了解決方案。

問題:

您希望在中建立 if 語句PHP 驗證上傳的檔案並只允許以下類型的檔案:jpg、gif 和 pdf。下面的程式碼需要適當地建構 if 語句。

$file_type = $_FILES['foreign_character_upload']['type']; //returns the mimetype

if(/*$file_type is anything other than jpg, gif, or pdf*/) {
  $error_message = 'Only jpg, gif, and pdf files are allowed.';
  $error = 'yes';
}

解決方案:

為了確保上傳的檔案符合您的規範,請建立一個允許檔案的陣列類型並利用in_array() 來確定上傳檔案的mimetype 是否包含在陣列中。

$file_type = $_FILES['foreign_character_upload']['type']; //returns the mimetype

$allowed = array("image/jpeg", "image/gif", "application/pdf");
if(!in_array($file_type, $allowed)) {
  $error_message = 'Only jpg, gif, and pdf files are allowed.';
  $error = 'yes';
}

透過將檔案類型與預先定義的允許類型清單進行比較,此修改後的 if 語句有效地防止上傳非- 相容的檔案。

以上是如何使用'in_array()”在 PHP 中驗證上傳的檔案類型?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn