Я пытаюсь создать перекрестную проверку загруженных файлов через phpmailer, используя значения файлов "extension X mime"
, система работает практически со всеми файлами, которые мне нужны, но исключительно с файлами .rtf
сценарий не выполняется. т работает.
Расширение просто исчезает, скрипт не может получить это, если файл .rtf
. Я использую этот скрипт: https://stackoverflow.com/a/33349901/4623271 с некоторыми изменениями.
Ниже в коде указана переменная $ext
, где я могу получить расширение любых файлов, разрешенных для проверки, кроме файлов .rtf
, когда файл представляет собой .rtf
, переменная становится явно пустой.
Я пытался использовать $ext = end(explode(".", $_FILES["uploadedFile"]["name"]));
, но таким же образом, когда файл .rtf
, переменная становится пустой.
// mime verification
$finfo = new finfo(FILEINFO_MIME_TYPE);
if (false === $ext = array_search(
$finfo->file($_FILES['uploadedFile']['tmp_name']),
array(
'doc' => 'application/msword',
'docx' => 'application/vnd.openxmlformats-officedocument.wordprocessingml.document',
'rtf' => 'application/msword',
'odt' => 'application/vnd.oasis.opendocument.text',
'txt' => 'text/plain',
'pdf' => 'application/pdf',
),
true
)) {
$errorMsg .= "<br> Please, watch that the formats allowed are: \"doc\", \"docx\", \"rtf\", \"odt\", \"txt\", \"pdf\"' ";
}
За то время, которое вы потратили на чтение этого, спасибо.