Resumo : neste tutorial, você aprenderá como copiar um arquivo usando a copy()
função de arquivo PHP de um local para outro.
Introdução à função de arquivo copy() do PHP
Para copiar um arquivo de um local para outro, você usa a copy()
função:
copy ( string $source , string $dest , resource $context = ? ) : bool
Linguagem de código: PHP ( php )
A copy()
função de arquivo possui três parâmetros:
$source
é o caminho completo para o arquivo que você deseja copiar.$dest
é o caminho completo para o arquivo para o qual o arquivo será copiado.$context
é um recurso de contexto válido.
A copy()
função retorna true
se o arquivo foi copiado com sucesso ou false
caso tenha ocorrido um erro durante a cópia do arquivo.
Observe que se o $dest
arquivo existir, a copy()
função irá sobrescrevê-lo.
Exemplos de arquivos de cópia PHP
Vejamos alguns exemplos de uso da copy()
função.
1) Um exemplo simples de arquivo de cópia PHP
O exemplo a seguir usa a copy()
função para copiar o arquivo readme.txt
para readme.bak
:
<?php
$source = 'readme.txt';
$dest = 'readme.bak';
echo copy($source, $dest)
? "The file $source was copied to $dest successfully!"
: "Error copying the file $source";
Linguagem de código: HTML, XML ( xml )
2) Verifique se o arquivo de destino existe antes de copiar
O exemplo a seguir usa a copy()
função para copiar o readme.txt
arquivo para o readme.bak
arquivo. Além disso, verifica se readme.bak
existe antes de sobrescrever o arquivo:
<?php
$source = 'readme.txt';
$dest = 'readme.bak';
!file_exists($source) && die("The file $source does not exist");
file_exists($dest) && die("The file $dest already exists");
echo copy($source, $dest)
? "The file $source was copied to $dest successfully!"
: "Error copying the file $source";
Linguagem de código: HTML, XML ( xml )
3) Função auxiliar de cópia de arquivo PHP
A copy_file()
função auxiliar a seguir copia um arquivo. Ele retorna falso se o arquivo de origem não existir ou o arquivo de destino existir e o argumento substituído for true
:
<?php
function copy_file($source, $dest, $overwritten = true): bool
{
if (!file_exists($source)) {
return false;
}
if (!$overwritten && file_exists($dest)) {
return false;
}
return copy($source, $dest);
}
Linguagem de código: HTML, XML ( xml )
Resumo
- Use a função de arquivo PHP
copy()
para copiar um arquivo de um local para outro. - A
copy()
função substitui o arquivo de destino, se ele existir.