ftp_ssl_connect
(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)
ftp_ssl_connect — Öffnet eine sichere SSL-FTP-Verbindung
Beschreibung
ftp_ssl_connect() öffnet eine
explizite SSL-FTP-Verbindung zu dem angegebenen
host
. Das impliziert, dass
ftp_ssl_connect() gelingt, selbst wenn der Server
nicht für SSL-FTP konfiguriert ist oder sein Zertifikat ungültig ist. Erst
wenn ftp_login() aufgerufen wird, sendet der Client das
entsprechende AUTH-FTP-Kommando, sodass ftp_login() in
den genannten Fällen fehlschlagen wird.
Hinweis: Warum diese Funktion eventuell nicht vorhanden ist
Vor PHP 7.0.0 war ftp_ssl_connect() nur verfügbar, wenn sowohl das FTP-Modul als auch die OpenSSL-Unterstützung statisch in PHP eingebunden wurden. Daher war diese Funktion in den offiziellen PHP-Builds unter Windows nicht definiert. Um diese Funktion auch unter Windows verfügbar zu machen, musste PHP selbst kompiliert werden.
Hinweis:
ftp_ssl_connect() ist nicht dazu gedacht, mit sFTP verwendet zu werden. Um sFTP mit PHP zu verwenden, siehe ssh2_sftp().
Parameter-Liste
-
hostname
-
Die Adresse des FTP-Servers. Dieser Parameter sollte keinen abschließenden Schrägstrich und kein vorangestelltes
ftp://
haben. -
port
-
Gibt einen alternativen Port für die Verbindung an. Fehlt er oder wird er auf 0 gesetzt, wird der Standard-FTP-Port 21 verwendet.
-
timeout
-
Dieser Parameter bestimmt den Timeout für alle nachfolgenden Netzwerktätigkeiten. Falls er fehlt, wird er auf den Standardwert von 90 Sekunden gesetzt. Der Timeout kann jederzeit mittels ftp_set_option() gesetzt und mittels ftp_get_option() abgefragt werden.
Rückgabewerte
Gibt bei Erfolg eine FTP\Connection-Instanz zurück.
Bei einem Fehler wird false
zurückgegeben.
Changelog
Version | Beschreibung |
---|---|
8.1.0 | Gibt jetzt eine FTP\Connection-Instanz zurück; vorher wurde eine Ressource zurückgegeben. |
Beispiele
Beispiel #1 ftp_ssl_connect()-Beispiel
<?php
// SSL-Verbindung aufbauen
$ftp = ftp_ssl_connect($ftp_server);
// Login mit Benutzername und Passwort
$login_result = ftp_login($ftp, $ftp_user_name, $ftp_user_pass);
if (!$login_result) {
// PHP hat in diesem Fall bereits eine Nachricht der Stufe E_WARNING erzeugt
die("Login nicht möglich");
}
echo ftp_pwd($ftp);
// SSL-Verbindung schließen
ftp_close($ftp);
?>