Zum Inhalt springen

ftp_nb_continue()

Was ist ftp_nb_continue()?

Die Funktion ftp_nb_continue() ist eine integrierte PHP-Funktion, die einen asynchronen FTP-Vorgang fortsetzt. Die Funktion erwartet einen Parameter:

  1. ftp_stream: Die Verbindungs-ID, die von der Funktion ftp_connect() zurückgegeben wird.

Die Funktion gibt eine der drei Konstanten zurück: FTP_OK, wenn der Vorgang erfolgreich abgeschlossen wurde, FTP_FAILED, wenn er fehlgeschlagen ist, oder FTP_MOREDATA, wenn weitere Daten verfügbar sind und der Vorgang noch läuft.

Syntax von ftp_nb_continue()

Die Syntax der Funktion ftp_nb_continue() lautet wie folgt:

Syntax von ftp_nb_continue()

php
int ftp_nb_continue ( resource $ftp_stream )

Die Funktion ftp_nb_continue() erwartet einen Parameter, ftp_stream. Der Parameter ftp_stream ist die Verbindungs-ID, die von der Funktion ftp_connect() zurückgegeben wird. Hinweis: Ab PHP 8.1 ist der Parametertyp FTP\Connection anstelle von resource.

Verwendung von ftp_nb_continue()

Um die Funktion ftp_nb_continue() zu verwenden, müssen Sie zunächst einen asynchronen FTP-Vorgang mit einer der folgenden Funktionen initiieren: ftp_nb_fget(), ftp_nb_fput(), ftp_nb_get(), ftp_nb_put() oder ftp_nb_mkdir(). Hier ist ein Beispiel:

Verwendung von ftp_nb_continue()

php
<?php

// Set up an FTP connection
$conn = ftp_connect('ftp.example.com');

// Login with your FTP credentials
ftp_login($conn, 'username', 'password');

// Initiate an asynchronous FTP operation
ftp_nb_get($conn, 'local_file.txt', 'remote_file.txt', FTP_BINARY);

// Continue the asynchronous FTP operation
while (ftp_nb_continue($conn) === FTP_MOREDATA) {
    // Do something else while waiting for the FTP operation to complete
}

// Close the FTP connection
ftp_close($conn);

In diesem Beispiel stellen wir eine Verbindung zum FTP-Server mit der Funktion ftp_connect() her. Anschließend melden wir uns mit unseren FTP-Zugangsdaten über die Funktion ftp_login() an. Wir initiieren einen asynchronen FTP-Vorgang mit der Funktion ftp_nb_get() und setzen ihn mit der Funktion ftp_nb_continue() fort. Abschließend schließen wir die FTP-Verbindung.

Fehlerbehandlung in ftp_nb_continue()

Es ist wichtig, Fehler bei der Verwendung der Funktion ftp_nb_continue() ordnungsgemäß zu behandeln. Wenn die Funktion FTP_FAILED zurückgibt, bedeutet dies, dass der asynchrone FTP-Vorgang fehlgeschlagen ist. Hier ist ein Beispiel, wie Fehler behandelt werden können:

Fehlerbehandlung in ftp_nb_continue()

php
<?php

$status = FTP_MOREDATA;
while ($status === FTP_MOREDATA) {
    $status = ftp_nb_continue($conn);
    if ($status === FTP_FAILED) {
        echo "FTP operation failed.\n";
        break;
    }
    // Do something else while waiting for the FTP operation to complete
}

In diesem Beispiel prüfen wir den Rückgabewert der Funktion ftp_nb_continue(). Falls dieser FTP_FAILED ist, geben wir eine Fehlermeldung aus und brechen die Schleife ab. Falls FTP_MOREDATA zurückgegeben wird, führen wir andere Aktionen aus, während wir auf den Abschluss des FTP-Vorgangs warten.

Fazit

Die Funktion ftp_nb_continue() ist eine nützliche integrierte PHP-Funktion, mit der Sie einen asynchronen FTP-Vorgang fortsetzen können. Durch die Befolgung der in diesem Artikel beschriebenen Richtlinien und Best Practices können Sie die Funktion ftp_nb_continue() sicher in Ihren PHP-Projekten einsetzen. Wir hoffen, dass dieser Artikel für Sie hilfreich war.

Praxis

Was ist die Hauptfunktion von FTP_NB_CONTINUE in PHP?

Finden Sie das nützlich?

Dual-run-Vorschau — vergleichen Sie mit den Symfony-Routen live.