PHP Handbuch
Zurück |  | Weiter

# XLVI. FTP-Funktionen

# Einführung

Die Funktionen dieser Erweiterung implementieren den Zugriff auf Server über das File Transfer Protocol (FTP), wie unter http://www.faqs.org/rfcs/rfc959 definiert. Wenn Sie ausschließlich eine Datei von einem FTP-Server lesen oder Schreiben wollen, sollten Sie die Verwendung der `ftp://` Wrapper zusammen mit den Filesystem Funktionen in Betracht ziehen. Dies ermöglicht einen einfacheren und intuitivere Zugriff.

# Anforderungen

Diese Erweiterung benötigt keine externen Bibliotheken.

# Installation

Um die FTP Funktionen zu verwenden muss die Option `--enable-ftp` verwendet (PHP 4 oder neuer) werden oder die Option `--with-ftp` (PHP 3).

Die Windowsversion von PHP enthält diese Erweiterung. Um diese Funktionen zu verwenden, müssen Sie keine zusätzlichen Erweiterungen aktivieren.

# Laufzeit Konfiguration

Diese Erweiterung definiert keine Konfigurationseinstellungen in der `php.ini`.

# Resource Typen

Diese Erweiterung verwendet ausschließlich einen Resourcen-Typ und zwar den Link-Identifier der FTP-Connection, der von ftp_connect() und ftp_ssl_connect() zurückgeliefert wird.

# Vordefinierte Konstanten

Folgende Konstanten werden von dieser Erweiterung definiert und stehen nur zur Verfügung, wenn die Erweiterung entweder statisch in PHP kompiliert oder dynamisch zur Laufzeit geladen wurde.

`FTP_ASCII` (integer)

`FTP_TEXT` (integer)

`FTP_BINARY` (integer)

`FTP_IMAGE` (integer)

`FTP_TIMEOUT_SEC` (integer)

  Weitere Informationen finden Sie unter ftp_set_option().

Die folgenden Konstanten existieren ab PHP 4.3.0.

`FTP_AUTOSEEK` (integer)

  Weitere Informationen finden Sie unterftp_set_option().

`FTP_AUTORESUME` (integer)

  Ermittelt automatisch die Position zum starten und fortsetzen bei GET und PUT Befehlen. (Funktioniert nur wenn FTP_AUTOSEEK aktiviert ist.)

`FTP_FAILED` (integer)

  Die asynchrone Übertragung ist fehlgeschlagen.

`FTP_FINISHED` (integer)

  Die asynchrone Übertragung ist beendet.

`FTP_MOREDATA` (integer)

  Die asynchrone Übertragung läuft noch.

# Beispiele

Beispiel 1. FTP Beispiel

`<?php
// Verbindungsaufbau
$conn_id = ftp_connect($ftp_server);
// Login mit Username und Passwort
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
// Verbindung überprüfen
if ((!$conn_id) || (!$login_result)) {
echo "FTP Verbindung ist fehlgeschlagen!";
echo "Verbindungasufbau zu $ftp_server mit Username $ftp_user_name versucht.";
exit;
} else {
echo "Verbunden zu $ftp_server mit Username $ftp_user_name";
}
// Datei hochladen
$upload = ftp_put($conn_id, $destination_file, $source_file, FTP_BINARY);
// Upload überprüfen
if (!$upload) {
echo "FTP-Upload ist fehlgeschlagen!";
} else {
echo "Datei $source_file auf Server $ftp_server als $destination_file hochgeladen";
}
// FTP Verbidung schließen
ftp_close($conn_id);
?>`

Zurück | Zum Anfang | Weiter
fbsql_warnings | Nach oben | ftp_alloc