How can PHP be used to identify the file extension if it is missing?

When a file is missing its extension, PHP can still identify the file type by using the `finfo_file()` function from the Fileinfo extension. This function returns the MIME type of a file, which can then be used to determine the file extension. By utilizing this function, PHP can accurately identify the file type even when the extension is missing.

$file_path = 'path/to/file/without/extension';
$finfo = finfo_open(FILEINFO_MIME_TYPE);
$mime_type = finfo_file($finfo, $file_path);
finfo_close($finfo);

$extension = array_search(
    $mime_type,
    array(
        'jpg' => 'image/jpeg',
        'png' => 'image/png',
        'gif' => 'image/gif',
        // Add more MIME types and corresponding extensions as needed
    ),
    true
);

if ($extension !== false) {
    echo "The file extension is: $extension";
} else {
    echo "Unable to determine file extension.";
}