ftp_nb_fget

(PHP 4 >= 4.3.0, PHP 5, PHP 7)

ftp_nb_fget Lädt eine Datei vom FTP-Server und schreibt sie in eine lokale Datei (nicht-blockierend)

Beschreibung

ftp_nb_fget ( resource $ftp_stream , resource $handle , string $remote_file [, int $mode = FTP_IMAGE [, int $resumepos = 0 ]] ) : int

ftp_nb_fget() lädt eine entfernte Datei von einem FTP-Server.

Der Unterschied zwischen dieser Funktion und ftp_fget() ist, dass diese Funktion die Datei asynchron überträgt, so dass Ihr Programm noch andere Operationen ausführen kann während die Datei gespeichert wird.

Parameter-Liste

ftp_stream

Der Verbindungshandler der FTP-Verbindung.

handle

Ein geöffneter Dateizeiger, in dem die Daten gespeichert werden.

remote_file

Der Pfad zur Datei auf dem Server.

mode

Der Transfer-Modus. Muss entweder FTP_ASCII oder FTP_BINARY sein.

resumepos

Die Position in der entfernten Datei, an der der Download beginnen soll.

Rückgabewerte

Gibt FTP_FAILED oder FTP_FINISHED oder FTP_MOREDATA zurück.

Changelog

Version Beschreibung
7.3.0 Der mode Parameter ist nun optional. Zuvor war er verpflichtend.

Beispiele

Beispiel #1 ftp_nb_fget()-Beispiel

<?php

// Öffne eine Datei zum Lesen
$file 'index.php';
$fp fopen($file'w');

$conn_id ftp_connect($ftp_server);

$login_result ftp_login($conn_id$ftp_user_name$ftp_user_pass);

// Download initialisieren
$ret ftp_nb_fget($conn_id$fp$fileFTP_BINARY);
while (
$ret == FTP_MOREDATA) {

   
// Irgendwas machen
   
echo ".";

   
// Download forsetzen
   
$ret ftp_nb_continue($conn_id);
}
if (
$ret != FTP_FINISHED) {
   echo 
"Es gab einen Fehler bei der Übertragung.";
   exit(
1);
}

// Dateizeiger schließen
fclose($fp);
?>

Siehe auch

  • ftp_nb_get() - Überträgt eine Datei von dem FTP-Server und speichert sie lokal (nicht blockierend)
  • ftp_nb_continue() - Nimmt die Übertragung einer Datei wieder auf (nicht-blockierend)
  • ftp_fget() - Lädt eine Datei vom FTP-Server und speichert sie in eine geöffnete Datei
  • ftp_get() - Lädt eine Datei von einem FTP-Server herunter