Ir para o conteúdo

Copiar todos os ficheiros de uma pasta para outra

A função que se segue copia todos os ficheiros da pasta de origem para a pasta de destino.

Função

function copia_ficheiros($origem, $destino){
    //O nome das pastas tem de terminar em "/" ou ""(win).
    if (is_dir($origem)) {
        if (is_dir($destino)) {
            if ($dir = opendir($origem)) {
                while (($ficheiro = readdir($dir)) !== false) {
                    if (!is_dir($origem.$ficheiro)) {
                        copy($origem.$ficheiro, $destino.$ficheiro);
                    }
                }
                closedir($dir);
            }
        }else{
            echo "A pasta "$destino" não existe.";
        }
    }else{
        echo "A pasta "$origem" não existe.";
    }
}

Exemplo de uso

Copiar todos os ficheiros da pasta "/imagens/" para a pasta "/arquivo/imagens/".

copia_ficheiros("/imagens/","/arquivo/imagens/");