Forum und email

FTP

Introdução

As funções nesta extenção implementam o acesso de clientes para servidores de arquivos usando o File Transfer Protocol (FTP) como definido em » https://www.faqs.org/rfcs/rfc959. Esta extenção permite acesso detalhado ao servidor FTP provendo um grande controle ao script. Se você quer somente ler ou escrever em um servidor FTP, você pode considerar o uso do wrapper ftp:// com as funções do sistema de arquivo o que prove um meio fácil e intuitivo.

Dependências

Nenhuma biblioteca externa é necessária para compilar esta extensão.

Instalação

Para utilizar as funções de FTP na sua configuração do PHP, você deve adicionar a opção --enable-ftp quando estiver instalando o PHP 4 ou posterior, --with-ftp quando estiver instalando o PHP 3.

A versão para Windows do PHP tem suporte embutido para esta extensão. Você não precisa carregar nenhuma extensão adicional para utilizar essas funções.

Configurações em execução

Esta extensão não define nenhum parâmetro de configuração no php.ini.

Tipos Resource

Este extenção usa um tipo resource, o qual é o identificador da conexão FTP, retornado por ftp_connect() ou ftp_ssl_connect().

Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

FTP_ASCII (integer)

FTP_TEXT (integer)

FTP_BINARY (integer)

FTP_IMAGE (integer)

FTP_TIMEOUT_SEC (integer)

Veja ftp_set_option() para maiores informações.

As seguintes constantes foram introduzidas no PHP 4.3.0.

FTP_AUTOSEEK (integer)

Veja ftp_set_option() para maiores informações.

FTP_AUTORESUME (integer)

Determina automaticamente a posição de reinício e início para requisições GET e PUT (funciona somente se FTP_AUTOSEEK estiver ativada)

FTP_FAILED (integer)

A transferência assincronoma falhou

FTP_FINISHED (integer)

A transferência assincronoma terminou

FTP_MOREDATA (integer)

A transferência assincronoma ainda esta ativa

Exemplos

Example#1 Exemplo de FTP

<?php
// Cria a conexão
$conn_id ftp_connect($ftp_server);

// login com o nome de usuário e senha
$login_result ftp_login($conn_id$ftp_user_name$ftp_user_pass);

// confere a conexão
if ((!$conn_id) || (!$login_result)) {
        echo 
"A conexão FTP falhou!";
        echo 
"Tentou conectar ao servidor $ftp_server para o usuário $ftp_user_name";
        exit;
    } else {
        echo 
"Conectaado ao servidor $ftp_server, para o usuário $ftp_user_name";
    }

// carrega o arquivo
$upload ftp_put($conn_id$destination_file$source_fileFTP_BINARY);

// confere o upload do arquivo
if (!$upload) {
        echo 
"O upload FTP falhou!";
    } else {
        echo 
"Carregado o arquivo $source_file no servidor $ftp_server como $destination_file";
    }

// fecha a conexão FTP
ftp_close($conn_id);
?>

Índice

  • ftp_alloc — Aloca espaço para um arquivo a ser enviado para o servidor (uploaded)
  • ftp_cdup — Muda para o diretório acima
  • ftp_chdir — Muda o diretório atual em um servidor FTP
  • ftp_chmod — Estabelece as permissões de um arquivo via FTP
  • ftp_close — Fecha uma conexão FTP
  • ftp_connect — Abre uma conexão FTP
  • ftp_delete — Exclui um arquivo no servidor FTP
  • ftp_exec — Solicita a execução de um comando no servidor FTP
  • ftp_fget — Copia um arquivo do servidor FTP e salva em um arquivo aberto
  • ftp_fput — Envia um arquivo aberto para um servidor php
  • ftp_get_option — Obtém várias opções em tempo de execução da conexão FTP atual
  • ftp_get — Copia um arquivo do servidor FTP
  • ftp_login — Realiza o login em uma conexão FTP
  • ftp_mdtm — Retorna a hora da ultima modificação no arquivo indicado
  • ftp_mkdir — Cria um diretório
  • ftp_nb_continue — Continua a receber/enviar um arquivo (sem bloquear)
  • ftp_nb_fget — Obtém um arquivo de um servidor FTP e escreve-o para um arquivo aberto(sem bloquear)
  • ftp_nb_fput — Grava um arquivo a partir de um arquivo aberto no servidor FTP (sem bloquear)
  • ftp_nb_get — Obtém um arquivo do servidor FTP e escreve-o em um arquivo local (sem bloquear)
  • ftp_nb_put — Grava um arquivo no servidor FTP (sem bloquear)
  • ftp_nlist — Retorna a lista dos arquivos em um dado diretório
  • ftp_pasv — Muda o modo passivo em on(ligado) ou off(desligado)
  • ftp_put — Envia um arquivo para o servidor FTP
  • ftp_pwd — Retorna o nome do diretório atual
  • ftp_quit — Sinônimo de ftp_close
  • ftp_raw — Envia um comando arbritário para o servidor FTP
  • ftp_rawlist — Retorna uma lista detalhada dos arquivos em um diretório
  • ftp_rename — Renomeia um arquivo ou diretório no servidor FTP
  • ftp_rmdir — Remove um diretório
  • ftp_set_option — Define opções diversas em tempo de execução
  • ftp_site — Envia o comando SITE para o servidor
  • ftp_size — Retorna o tamanho de um dado arquivo
  • ftp_ssl_connect — Abre uma conexão SSL-FTP segura
  • ftp_systype — Retorna o identificador do tipo do sistema do servidor FTP remoto