// Created on savesnippets.com ยท https://savesnippets.com/o8ne0d05Z1qdvJ $maxBytes) { return [false, 'File size out of bounds']; } $mime = (new finfo(FILEINFO_MIME_TYPE))->file($file['tmp_name']); if (!in_array($mime, $allowedMime, true)) { return [false, "Disallowed MIME type: $mime"]; } return [true, null]; } [$ok, $err] = validateUpload($_FILES['avatar'] ?? [], ['image/jpeg', 'image/png'], 2_000_000); if (!$ok) { http_response_code(400); exit($err); }