"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo validar los tipos de archivos cargados en PHP con `in_array()`?

¿Cómo validar los tipos de archivos cargados en PHP con `in_array()`?

Publicado el 2024-11-26
Navegar:743

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

Carga de tipos de archivos específicos con PHP

En aplicaciones web, permitir a los usuarios cargar archivos requiere una cuidadosa consideración de la seguridad y la validación del contenido. Cuando desea restringir la carga a tipos de archivos específicos, PHP proporciona una solución a través de la función in_array().

Problema:

Desea crear una declaración if en PHP para validar los archivos cargados y permitir solo archivos de los siguientes tipos: jpg, gif y pdf. El siguiente código requiere la estructuración adecuada de la declaración 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';
}

Solución:

Para garantizar que los archivos cargados cumplan con sus especificaciones, cree una serie de tipos de archivos permitidos y utilice in_array() para determinar si el tipo MIME del archivo cargado es incluido en la matriz.

$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';
}

Al comparar el tipo de archivo con la lista predefinida de tipos permitidos, esta declaración if revisada previene efectivamente la carga de archivos no compatibles.

Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3