Написать письмо авторам |
УЧЕБНИК PHP |
справочник функций <Оnline> |
Об учебнике |
Обновление |
Основные возможности PHP при работе с FTP
Протокол FTP (File Transfer Protocol - протокол передачи файлов) - один из старейших протоколов Интернета, предназначенный для передачи файлов между двумя хостами. Как правило, при работе с FTP выполняются следующие стандартные действия:
Соединение с FTP-серверомСоединение с удаленным FTP-сервером выполняется с помощью функции ftp_connect: Синтаксис: ftp_connect (string host [, int port [, int timeout]]) В качестве обязательного параметра эта функция принимает имя хоста host, с которым необходимо установить соединение. Второй необязательный параметр port указывает на номер порта, через который осуществляется соединение. Если этот параметр не указан, то соединение осуществляется через порт 21, являющийся стандартным FTP-портом. Третий необязательный параметр определяет максимально время выполнения сценария (тайм-аут) и по умолчанию равен 90 секундам. Соединение с удаленным FTP-сервером <? $host = "ftp://ftp.server.ru"; $connect = ftp_connect($host); if(!$connect) { echo("Ошибка соединения"); exit; } else { echo("Соединение установлено"); } ?> Регистрация на FTP-сервереПосле того, как соединение установлено, необходимо зарегистрироваться на сервере с определенным именем и паролем. Сделать это можно при помощи функции ftp_login. Регистрация на FTP-сервере <? $user = "maks"; $password = "password"; $result = ftp_login($connect, $user, $password); ?> Как видно из листинга, функция ftp_login принимает три параметра: дескриптор FTP-соединения, возвращаемый функцией ftp_connect, имя пользователя и пароль. Замечание: Регистрация на сервере не требуется, если FTP-сервер является анонимным. Закрытие соединенияПо окончании сеанса связи с FTP-сервером, нужно закрыть FTP-соединение с помощью функции ftp_quit, принимающей в качестве единственного параметра дескриптор FTP-соединения: Синтаксис: ftp_quit($connect); Загрузка файлов с сервераЗагрузка файлов с сервера осуществляется при помощи функции ftp_get: Синтаксис: bool ftp_get(int ftp_connect, string local_file, string remote_file, int mode); Аргумент mode, задающий режим пересылки файлов, должен быть указан как константа FTP_BINARY или FTP_ASCII. Режим FTP_ASCII используется для пересылки файлов, состоящих только из ASCII-символов (т. е. текстовых файлов), а двоичный режим - для пересылки всех остальных файлов. К примеру: <? $local_file = "/users/local.txt"; $remote_file = "remote.txt"; ftp_get($connect, $local_file, $remote_file, FTP_BINARY); ?>
|
Наверх |