In the provided PHP code snippet, what is the purpose of the 'filefilter' function and how does it interact with the 'array_filter()' function?

The 'filefilter' function is used to filter out any files in an array that do not end with the '.txt' extension. It interacts with the 'array_filter()' function by passing each element of the array to the 'filefilter' function, which then returns true or false based on whether the file ends with '.txt'. The 'array_filter()' function then uses these boolean values to filter out the unwanted files.

<?php
// File filter function
function filefilter($file) {
    if (pathinfo($file, PATHINFO_EXTENSION) === 'txt') {
        return true;
    } else {
        return false;
    }
}

// Array of files
$files = ['file1.txt', 'file2.jpg', 'file3.txt', 'file4.pdf'];

// Filter out non-txt files
$filtered_files = array_filter($files, 'filefilter');

// Output filtered files
print_r($filtered_files);
?>