public function testGetRecursiveDirectoryList()
 {
     $path = $this->path;
     $initialCount = sizeof(get_recursive_directory_list($path));
     $this->assertTrue($initialCount > 0);
     // up one dir. should have more.
     $path = dirname($path);
     $newCount = sizeof(get_recursive_directory_list($path));
     $this->assertTrue($newCount > $initialCount);
 }
/**
 * Recursively delete everything below $path (including $path itself).
 * 
 * @param string $path
 * @param bool $include_directories - if false, we only do files.
 */
function recursive_delete($path, $include_directories = false)
{
    if (!file_exists($path)) {
        return null;
    }
    $files = get_recursive_file_list($path);
    foreach ($files as $file) {
        unlink($file);
    }
    if ($include_directories) {
        $directories = get_recursive_directory_list($path);
        foreach ($directories as $d) {
            rmdir($d);
        }
    }
}