Я должен загрузить только PDF-файл. Существуют различные способы проверки расширения файла, например, функция $ _FILES [‘files’] [‘type’] или pathinfo (). Но что, если человек изменяет расширение файла перед загрузкой.
Пример.
Если человек меняет png файл с image.png на image.pdf. Тогда как я могу проверить, что загруженный файл не является PDF?
попробуй это
echo mime_content_type('form.pdf');
проверить больше информации в http://php.net/manual/es/function.mime-content-type.php
РЕДАКТИРОВАТЬ:
Я переименовываю файл .zip в файл .pdf
if(isset($_FILES['archivo']) && is_uploaded_file($_FILES['archivo']['tmp_name']))
{
$archivo = $_FILES['archivo']['tmp_name'];
$archivo_name = $_FILES['archivo']['name'];
echo mime_content_type($archivo);
move_uploaded_file($archivo, "upload/" . $archivo_name);
}
скрипт выше, приложение для печати / zip
Тогда вы можете сделать что-то вроде этого:
if (mime_content_type($_FILES['archivo']['tmp_name']) == 'application/pdf') {
//ok is a pdf
}
Других решений пока нет …