Podręcznik PHP
Poprzedni |  | Następny

# XLV. FTP

# Wstęp

Funkcje z tego rozszerzenia implementują kliencki dostęp do plików serwera rozpoznającego File Transfer Protocol (FTP) opisanego w http://www.faqs.org/rfcs/rfc959. To rozszerzenie umożliwia dostęp do serwera FTP udostępniając szeroki zakres możliwości kontoli dla wykonującego skryptu. Jeśli chcesz tylko czytać z pliku na serwerze FTP lub do niego zapisywać, zastanów się nad użyciem wrappera ftp:// z funkcjami systemu plików które udostępniaja prostszy i bardziej intuicyjny interfejs.

# Wymagania

Do zbudowania tego rozszerzenia nie są wymagane żadne zewnętrzne biblioteki.

# Konfiguracja czasu wykonywania

To rozszerzenie nie definiuje posiada żadnych dyrektyw konfiguracyjnych w pliku `php.ini`.

# Typy zasobów

To rozszerzenie korzysta z jednego typu zasobów, którym jest identyfikator połączenia FTP zwracany przez ftp_connect() lub ftp_ssl_connect().

# Stałe predefinopwane

Poniższe stałe są zdefiniowane w tym rozszerzeniu i stają się dostępne, gdy rozszerzenie jest dokompilowane do PHP, lub załadowane dynamicznie przy starcie.

`FTP_ASCII` (integer)

`FTP_TEXT` (integer)

`FTP_BINARY` (integer)

`FTP_IMAGE` (integer)

`FTP_TIMEOUT_SEC` (integer)

  Więcej informacji można znaleźć w opisie funkcji ftp_set_option().

Poniższe stałe zostały dodane w PHP 4.3.0.

`FTP_AUTOSEEK` (integer)

  Więcej informacji można znaleźć w opisie funkcji ftp_set_option().

`FTP_AUTORESUME` (integer)

  Automatycznzie określa pozycję wznowienia transferudla operacji GET i PUT (działa tylko przy włączonym FTP_AUTOSEEK)

`FTP_FAILED` (integer)

  Transfer asynchroniczny się nie powiódł.

`FTP_FINISHED` (integer)

  Transfer asynchroniczny został zakończony.

`FTP_MOREDATA` (integer)

  Transfer asynchroniczny jest ciągle aktywny.

# Przykłady

Przykład 1. Przykład użycia FTP

`<?php
// ustaw podstawowe połączenie
$conn_id = ftp_connect($ftp_server);
// zaloguj się nazwą użytkownika i hasłem
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
// sprawdź połączenie
if ((!$conn_id) || (!$login_result)) {
echo "Połączenie FTP się nie powiodło!";
echo "Próbowano połączyć się do $ftp_server jako użytkownik"
. $ftp_user_name;
exit;
} else {
echo "Połączony z $ftp_server jako użytkownik $ftp_user_name";
}
// prześlij plik
$upload = ftp_put($conn_id, $plik_docelowy, $plik_zrodlowy, FTP_BINARY);
// sprawdź stan operacji
if (!$upload) {
echo "Wstawienie pliku przez FTP się nie powiodło!";
} else {
echo "Przesłano $plik_zrodlowy na $ftp_server jako $plik_docelowy";
}
// zamknij strumień FTP
ftp_close($conn_id);
?>`

Poprzedni | Spis treści | Następny
fbsql_warnings | Początek rozdziału | ftp_alloc