ftp_connect

(PHP 4, PHP 5, PHP 7)

ftp_connectOtwiera połączenie FTP

Opis

ftp_connect ( string $host [, int $port = 21 [, int $timeout = 90 ]] ) : resource

ftp_connect() otwiera połączenie z serwerem FTP podanym jako argument.

Parametry

host

Adres serwera ftp. Wartość tego argumentu nie powinna mieć żadnych znaków przed nazwą hosta, jak również nie powinien zaczynać się od ftp://.

port

Argument ten określa port, z którym ma nastąpić połączenie. Jeśli argument ten zostanie pominięty, albo podana zostanie wartość zero, użyty zostanie domyślny port usługi FTP, czyli 21.

timeout

Argument ten określa maksymalny czas, jaki mogą zająć wszystkie następujace po sobie operacje sieciowe. Jeśli argument ten zostanie pominięty, uznana zostanie domyślna wartość 90 sekund. Wartość ta może być później odczytana i zmieniona za pomocą funkcji ftp_set_option() i ftp_get_option().

Zwracane wartości

W przypadku powodzenia zwraca strumień FTP lub FALSE w przypadku błędu.

Przykłady

Przykład #1 Przykład użycia ftp_connect()

<?php

$ftp_server 
"ftp.example.com";

// nawiąż połączenie lub zakończ pracę.
$conn_id ftp_connect($ftp_server) or die("Nie można nawiązać połączenia z $ftp_server"); 

?>

Zobacz też:

add a note add a note

User Contributed Notes 3 notes

up
9
sean at boyercentral dot net
15 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
rafael at gawenda dot es
3 years ago
Sean's example is wrong, because it includes the protocol match, so result would be php_network_getaddresses: getaddrinfo failed: Name or service not known
up
-1
edouard at e-gaulue dot com
3 years ago
On server with multiple network card, is there a way to choose the interface to use ?
To Top