PHP 5.4.31 Released

ftp_connect

(PHP 4, PHP 5)

ftp_connectAbre uma conexão FTP

Descrição

resource ftp_connect ( string $host [, int $port [, int $timeout ]] )

ftp_connect() abre uma conexão FTP com o host especificado.

Parâmetros

host

O endereço do servidor de FTP. Este parâmetro não deve ter nenhuma barra ao final e não deve ser prefixado com ftp://.

port

Este parâmetro especifica uma porta alternativa para conectar. Se for omitida ou for definida como zero, então a porta padrão do FTP, 21, será usada.

timeout

Este parâmetro define o limite de tempo para todas as operações de rede subsequentes. Se omitido, o valor padrão é 90 segundos. O limite de tempo pode ser modificado e obtido a qualquer hora com ftp_set_option() e ftp_get_option().

Valor Retornado

Retorna um stream FTP em caso de sucesso, ou FALSE em caso de erro.

Exemplos

Exemplo #1 ftp_connect() example

<?php

$ftp_server 
"ftp.example.com";

// set up a connection or die
$conn_id ftp_connect($ftp_server) or die("Couldn't connect to $ftp_server"); 

?>

Changelog

Versão Descrição
4.2.0 timeout foi adicionado.

Veja Também

add a note add a note

User Contributed Notes 2 notes

up
1
sean at boyercentral dot net
5 years ago
Ever needed to create an FTP connection resource defaulted to a particular dir from a URI? Here's a simple function that will take a URI like ftp://username:password@subdomain.example.com/path1/path2/, and return an FTP connection resource.

<?php
function getFtpConnection($uri)
{
   
// Split FTP URI into:
    // $match[0] = ftp://username:password@sld.domain.tld/path1/path2/
    // $match[1] = ftp://
    // $match[2] = username
    // $match[3] = password
    // $match[4] = sld.domain.tld
    // $match[5] = /path1/path2/
   
preg_match("/ftp:\/\/(.*?):(.*?)@(.*?)(\/.*)/i", $uri, $match);

   
// Set up a connection
   
$conn = ftp_connect($match[1] . $match[4] . $match[5]);

   
// Login
   
if (ftp_login($conn, $match[2], $match[3]))
    {
       
// Change the dir
       
ftp_chdir($conn, $match[5]);

       
// Return the resource
       
return $conn;
    }

   
// Or retun null
   
return null;
}
?>
up
-1
rainer at justchords dot com
10 years ago
Connecting through a firewall also depends on the type. This is an example for the Secure Gateway FTP. First you have to connect to the firewall, then open a session to the destination ftp server. This looks like this:

// Connect to firewall
$conn_id = ftp_connect("firewall.yournet.com");

// Open a session to an external ftp site
$login_result = ftp_login ($conn_id, "userid@externalhost.com", "password");

// Check open
if ((!$conn_id) || (!$login_result)) {
        echo "Ftp-connect failed!"; die;
    } else {
        echo "Connected.";
    }

// turn on passive mode transfers
ftp_pasv ($conn_id, true) ;

... and go on ...
To Top