Are there alternative functions in PHP that can be used to check the image type of an uploaded file more securely?

When checking the image type of an uploaded file in PHP, it is important to use a secure method to prevent malicious files from being uploaded to the server. One alternative function that can be used is `exif_imagetype()`, which checks the image type based on the image's EXIF data rather than relying on the file extension. This provides a more reliable way to determine the image type and helps prevent potential security vulnerabilities.

// Check the image type using exif_imagetype()
$allowed_types = array(IMAGETYPE_JPEG, IMAGETYPE_PNG, IMAGETYPE_GIF);
$detected_type = exif_imagetype($_FILES['file']['tmp_name']);

if(!in_array($detected_type, $allowed_types)) {
    // Invalid image type
    die('Invalid image type. Please upload a JPEG, PNG, or GIF file.');
}

// Continue with the file upload process