Функция для рекурсивного копирования директорий

На просторах не удалось найти достаточно приемлемого по простоте реализации варианта, поэтому свой:

        
    function dircopy($src, $dest){ 
        if(!file_exists($dest)) mkdir($dest, 0777);
        $files = glob($src.'/*');
        foreach($files as $file){
            if(is_dir($file)){
                $dir = $dest.'/'.basename($file);
                if(!file_exists($dir)) mkdir($dir, 0777);
                dircopy($file,$dir);
            }else{
                copy($file,$dest.'/'.basename($file));
            }
        }
    }