к оглавлению

Работа с FTP средствами PHP

Основные возможности PHP при работе с FTP

ftp_connect() 
ftp_get() 
ftp_login() 
ftp_quit() 


Протокол FTP (File Transfer Protocol - протокол передачи файлов) - один из старейших протоколов Интернета, предназначенный для передачи файлов между двумя хостами.

Как правило, при работе с FTP выполняются следующие стандартные действия:

Соединение с FTP-сервером

Соединение с удаленным FTP-сервером выполняется с помощью функции ftp_connect:

Синтаксис:

  ftp_connect (string host [, int port [, int timeout]])

В качестве обязательного параметра эта функция принимает имя хоста host, с которым необходимо установить соединение. Второй необязательный параметр port указывает на номер порта, через который осуществляется соединение. Если этот параметр не указан, то соединение осуществляется через порт 21, являющийся стандартным FTP-портом. Третий необязательный параметр определяет максимально время выполнения сценария (тайм-аут) и по умолчанию равен 90 секундам.

Соединение с удаленным FTP-сервером

<?php
  $host = "ftp://ftp.server.ru";
  $connect = ftp_connect($host);
  if(!$connect)
  {
    echo("Ошибка соединения");
    exit;
  }
  else
  {
    echo("Соединение установлено");  
  }
?>

Регистрация на FTP-сервере

После того, как соединение установлено, необходимо зарегистрироваться на сервере с определенным именем и паролем. Сделать это можно при помощи функции ftp_login.

Регистрация на FTP-сервере

<?php
  $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-символов (т. е. текстовых файлов), а двоичный режим - для пересылки всех остальных файлов.

К примеру:

<?php
  $local_file = "/users/local.txt";
  $remote_file = "remote.txt";
  ftp_get($connect, $local_file, $remote_file, FTP_BINARY);
?>
к оглавлению

Знаете ли Вы, что, как ни тужатся релятивисты, CMB (космическое микроволновое излучение) - прямое доказательство существования эфира, системы абсолютного отсчета в космосе, и, следовательно, опровержение Пуанкаре-эйнштейновского релятивизма, утверждающего, что все ИСО равноправны, а эфира нет. Это фоновое излучение пространства имеет свою абсолютную систему отсчета, а значит никакого релятивизма быть не может. Подробнее читайте в FAQ по эфирной физике.

НОВОСТИ ФОРУМАФорум Рыцари теории эфира
Рыцари теории эфира
 23.02.2020 - 19:17: ВОЙНА, ПОЛИТИКА И НАУКА - War, Politics and Science -> Проблема государственного терроризма - Карим_Хайдаров.
23.02.2020 - 19:14: ПЕРСОНАЛИИ - Personalias -> WHO IS WHO - КТО ЕСТЬ КТО - Карим_Хайдаров.
23.02.2020 - 19:10: ЭКОНОМИКА И ФИНАНСЫ - Economy and Finances -> ПРОБЛЕМА КРИМИНАЛИЗАЦИИ ЭКОНОМИКИ - Карим_Хайдаров.
22.02.2020 - 07:52: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от Ю.Ю. Болдырева - Карим_Хайдаров.
19.02.2020 - 18:24: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от Андрея Фурсова - Карим_Хайдаров.
17.02.2020 - 19:50: ЭКСПЕРИМЕНТАЛЬНАЯ ФИЗИКА - Experimental Physics -> Эксперименты Сёрла и его последователей с магнитами - Карим_Хайдаров.
17.02.2020 - 19:49: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> Просвещение от Андрея Тиртхи - Карим_Хайдаров.
17.02.2020 - 19:13: ЭКОНОМИКА И ФИНАНСЫ - Economy and Finances -> КОЛЛАПС МИРОВОЙ ФИНАНСОВОЙ СИСТЕМЫ - Карим_Хайдаров.
17.02.2020 - 19:09: ЭКСПЕРИМЕНТАЛЬНАЯ ФИЗИКА - Experimental Physics -> Вихревые эффекты и вихревые теплогенераторы - Карим_Хайдаров.
17.02.2020 - 19:06: ЭКСПЕРИМЕНТАЛЬНАЯ ФИЗИКА - Experimental Physics -> Эксперименты Андрея Петровича Хрищановича - Карим_Хайдаров.
17.02.2020 - 18:48: ВОСПИТАНИЕ, ПРОСВЕЩЕНИЕ, ОБРАЗОВАНИЕ - Upbringing, Inlightening, Education -> КОМПЬЮТЕРНО-СЕТЕВАЯ БЕЗОПАСНОСТЬ ДЛЯ ВСЕХ - Карим_Хайдаров.
17.02.2020 - 18:47: ВОЙНА, ПОЛИТИКА И НАУКА - War, Politics and Science -> ЗА НАМИ БЛЮДЯТ - Карим_Хайдаров.
Bourabai Research Institution home page

Bourabai Research - Технологии XXI века Bourabai Research Institution