«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как проверить типы загруженных файлов в PHP с помощью in_array()?

Как проверить типы загруженных файлов в PHP с помощью in_array()?

Опубликовано 26 ноября 2024 г.
Просматривать:120

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

Загрузка определенных типов файлов с помощью PHP

В веб-приложениях разрешение пользователям загружать файлы требует тщательного рассмотрения вопросов безопасности и проверки содержимого. Если вы хотите ограничить загрузку файлов определенных типов, 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(), чтобы определить, является ли MIME-тип загруженного файла включен в массив.

$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 эффективно предотвращает загрузку несовместимых файлов.

Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3