Manual do PHP
Anterior |  | Próxima

# XXXIV. 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 http://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 --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().

# 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

Exemplo 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_file, FTP_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);
?>`

Anterior | Principal | Próxima
fribidi_log2vis | Acima | ftp_alloc