ftp_connect

(PHP 4, PHP 5)

ftp_connectApre una connessione FTP

Descrizione

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

Restituisce un flusso FTP stream in caso di successo, FALSE in caso di errore.

La funzione ftp_connect() apre una connessione FTP all' host specificato. host non deve essere seguito da barre e non deve essere precedeuto da ftp://. Il parametro port specifica una porta alternativa cui connettersi. Se e' omesso o impostato a zero verra' usata la porta 21, default di FTP.

Il parametro timeout specifica il timeout per tutte le successive operazioni di rete. Se omesso il valore predefinito e' di 90 secondi. Il timeout puo' essere modificato o interrogato in qualsiasi momento con ftp_set_option() e ftp_get_option().

Nota:

Il parametro timeout e' disponibile a partire dalla release PHP 4.2.0.

Example #1 Esempio di funzione ftp_connect()

<?php

$ftp_server 
"ftp.example.com";

// stabilisce una connessione o esce
$conn_id ftp_connect($ftp_server) or die("Impossibile collegarsi a $ftp_server"); 

?>

Vedere anche ftp_close(), e ftp_ssl_connect().

add a note add a note

User Contributed Notes 2 notes

up
4
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
-2
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