How can PHP be used to recursively delete files within a folder before deleting the folder itself?

To recursively delete files within a folder before deleting the folder itself, we can use PHP's recursive directory iterator along with unlink function to delete files and rmdir function to delete the folder. By iterating through all files and subdirectories within the folder, we can delete all files first before deleting the folder itself.

function deleteFolder($dir){
    $files = array_diff(scandir($dir), array('.','..'));
    
    foreach ($files as $file) {
        (is_dir("$dir/$file")) ? deleteFolder("$dir/$file") : unlink("$dir/$file");
    }
    
    return rmdir($dir);
}

$folderPath = '/path/to/folder';
deleteFolder($folderPath);