Como baixar um arquivo do servidor FTP em PHP?
Existem várias maneiras de baixar um arquivo do servidor FTP em PHP. Aqui estão algumas delas:
Usando a função ftp_get()
A função ftp_get()
é usada para baixar um arquivo do servidor FTP para o seu servidor local. Aqui está um exemplo:
// Configurações de conexão FTP
$ftp_server = "ftp.example.com";
$ftp_username = "seu_usuario";
$ftp_password = "sua_senha";
// Conectando ao servidor FTP
$conn_id = ftp_connect($ftp_server);
// Fazendo login no servidor FTP
$login = ftp_login($conn_id, $ftp_username, $ftp_password);
// Caminho do arquivo no servidor FTP
$remote_file = "/caminho/do/arquivo/no/servidor/ftp/arquivo.txt";
// Caminho do arquivo local onde o arquivo será salvo
$local_file = "/caminho/do/arquivo/local/arquivo.txt";
// Baixando o arquivo do servidor FTP
if (ftp_get($conn_id, $local_file, $remote_file, FTP_BINARY)) {
echo "Arquivo baixado com sucesso!";
} else {
echo "Erro ao baixar o arquivo.";
}
// Fechando a conexão FTP
ftp_close($conn_id);
Usando a classe FTP do PHP
O PHP tem uma classe FTP embutida que pode ser usada para baixar arquivos do servidor FTP. Aqui está um exemplo:
// Configurações de conexão FTP
$ftp_server = "ftp.example.com";
$ftp_username = "seu_usuario";
$ftp_password = "sua_senha";
// Conectando ao servidor FTP
$ftp = new FTP;
$ftp->connect($ftp_server);
$ftp->login($ftp_username, $ftp_password);
// Caminho do arquivo no servidor FTP
$remote_file = "/caminho/do/arquivo/no/servidor/ftp/arquivo.txt";
// Caminho do arquivo local onde o arquivo será salvo
$local_file = "/caminho/do/arquivo/local/arquivo.txt";
// Baixando o arquivo do servidor FTP
if ($ftp->get($local_file, $remote_file, FTP_BINARY)) {
echo "Arquivo baixado com sucesso!";
} else {
echo "Erro ao baixar o arquivo.";
}
// Fechando a conexão FTP
$ftp->close();
Usando a biblioteca cURL
A biblioteca cURL pode ser usada para baixar arquivos do servidor FTP. Aqui está um exemplo:
// Configurações de conexão FTP
$ftp_server = "ftp.example.com";
$ftp_username = "seu_usuario";
$ftp_password = "sua_senha";
// Caminho do arquivo no servidor FTP
$remote_file = "/caminho/do/arquivo/no/servidor/ftp/arquivo.txt";
// Caminho do arquivo local onde o arquivo será salvo
$local_file = "/caminho/do/arquivo/local/arquivo.txt";
// Iniciando a sessão cURL
$ch = curl_init();
// Configurando as opções da sessão cURL
curl_setopt($ch, CURLOPT_URL, "ftp://$ftp_username:$ftp_password@$ftp_server/$remote_file");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_FILE, fopen($local_file, 'w'));
// Baixando o arquivo do servidor FTP
if (curl_exec($ch)) {
echo "Arquivo baixado com sucesso!";
} else {
echo "Erro ao baixar o arquivo.";
}
// Fechando a sessão cURL
curl_close($ch);