ftp_connect
(PHP 4, PHP 5)
ftp_connect — Opens an FTP connection
Description
$host
[, int $port
= 21
[, int $timeout
= 90
]] )
ftp_connect() opens an FTP connection to the
specified host
.
Parameters
-
host
-
The FTP server address. This parameter shouldn't have any trailing slashes and shouldn't be prefixed with ftp://.
-
port
-
This parameter specifies an alternate port to connect to. If it is omitted or set to zero, then the default FTP port, 21, will be used.
-
timeout
-
This parameter specifies the timeout for all subsequent network operations. If omitted, the default value is 90 seconds. The timeout can be changed and queried at any time with ftp_set_option() and ftp_get_option().
Return Values
Returns a FTP stream on success or FALSE
on error.
Examples
Example #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
Version | Description |
---|---|
4.2.0 |
timeout was added.
|
See Also
- ftp_close() - Closes an FTP connection
- ftp_ssl_connect() - Opens an Secure SSL-FTP connection
- ftp_alloc
- ftp_cdup
- ftp_chdir
- ftp_chmod
- ftp_close
- ftp_connect
- ftp_delete
- ftp_exec
- ftp_fget
- ftp_fput
- ftp_get_option
- ftp_get
- ftp_login
- ftp_mdtm
- ftp_mkdir
- ftp_nb_continue
- ftp_nb_fget
- ftp_nb_fput
- ftp_nb_get
- ftp_nb_put
- ftp_nlist
- ftp_pasv
- ftp_put
- ftp_pwd
- ftp_quit
- ftp_raw
- ftp_rawlist
- ftp_rename
- ftp_rmdir
- ftp_set_option
- ftp_site
- ftp_size
- ftp_ssl_connect
- ftp_systype
Коментарии
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;
}
?>