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

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

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

  • соединение с удаленным FTP-сервером;
  • регистрация на FTP-сервере;
  • загрузка файлов с сервера или на сервер;
  • закрытие соединения.

Работа с FTP начинается с открытия “потока” (stream) и делается это функцией “ftp_connect()”:

ftp_connect("имя хоста","порт","timeout");

Вместо “имя хоста” пропиcываем имя сайта, к которому хотим подключиться. В параметре “порт” указываем ftp-порт удаленного сервера (обычно “21”), а в “timeout” – на какое время (в секундах) хотим открыть соединение. Результат выполнения функции нужно присвоить какой-либо переменной, в нашем примере это переменная $open:

$open = ftp_connect("ftp.server.com", 21, 30);

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

Зарегистрироваться на сервере очень просто и поможет нам в этом функция “ftp_login”.

 bool ftp_login ( resource connect, string username, string password )

Функция принимает три параметра: дескриптор FTP-соединения, возвращаемый функцией ftp_connect, имя пользователя и пароль. Пример регистрации на FTP-сервере:

 $user = "admin"; 
 $password = "password1"; 
 $result = ftp_login( $connect, $user, $password ); 

Загрузка файлов с сервера

Загрузка файлов с сервера осуществляется при помощи функции “ftp_get”:

bool ftp_get ( resource connect, string local_file,
                 string remote_file, int mode );

Пример загрузки файлов с сервера:

 $local_file = "/admin/local.txt"; 
 $remote_file = "remote.txt"; 
 ftp_get( $connect, $local_file, $remote_file, FTP_BINARY ); 

Закрытие соединения

Закрыть FTP-соединение можно с помощью функции “ftp_close”, принимающей в качестве единственного параметра дескриптор FTP-соединения:

 bool ftp_close ( resource connect );

Удаление файлов с сервера

Удалить файл с FTP-сервера можно с помощью функции “ftp_delete”:

bool ftp_delete ( resource connect, string remote_file );
  • connect – дескриптор соединения
  • remote_file – имя удаляемого файла

Создание каталога на сервере

Новый каталог можно создать, используя функцию “ftp_mkdir”:

string ftp_mkdir ( resource connect, string directory );

Эта функция возвращает имя созданного каталога или false в случае неудачи. Например:

$dir = "images"; 
$created_dir = ftp_mkdir( $connect, $dir ); 

Удаление каталогов

Для удаления каталогов применяется функция “ftp_rmdir”:

bool ftp_rmdir ( resource connect, string directory );

Переименование файлов

Переименовать файлы на FTP-сервере можно с помощью функции “ftp_rename”:

bool ftp_rename ( resource connect, string from, string to );

Узнать размер файла

Функция “ftp_size()” возвращает размер файла, либо значение “-1” в случае неудачи:

echo ftp_size($open, "test.txt"); 

Я не стал описывать все функции поэтому советую посетить отличный сайт где можно посмотреть все функции для работы с FTP: php.net. Также хочу посоветовать пользоваться проверенным бесплатным FTP клиентом называется он Filezilla. Я сам им пользуюсь, он очень прост и удобен в использовании.

Для чего нужен FTP-клиент?

FTP-клиент — программа для упрощения доступа к FTP серверу. В зависимости от назначения может либо предоставлять пользователю простой доступ к удалённому FTP-серверу в режиме текстовой консоли, беря на себя только работу по пересылке команд пользователя и файлов, либо отображать файлы на удалённом сервере как если бы они являлись частью файловой системы компьютера пользователя, либо и то и другое.

В последних двух случаях FTP-клиент берёт на себя задачу интерпретации действий пользователя в команды протокола FTP, тем самым давая возможность использовать протокол передачи файлов без ознакомления со всеми его премудростями.

 
Поделиться в facebook
Facebook
Поделиться в twitter
Twitter
Поделиться в vk
VK
Поделиться в google
Google+
Поделиться в email
Email

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Группа в VK

Помощь проекту

Обнаружили опечатку?

Сообщите нам об этом, выделите текст с ошибкой и нажмите Ctrl+Enter, будем очень признательны!

Свежие статьи

Похожие статьи

Фреймворк Yii

Фреймворк Yii

Yii — это высокоэффективный основанный на компонентной структуре PHP-фреймворк для разработки масштабных веб-приложений. Он позволяет максимально применить концепцию повторного использования кода и может существенно ускорить

 
Библиотека RedBeanPHP.

Библиотека RedBeanPHP.

RedBeanPHP – это мощная ORM для PHP, которая значительно упрощает работу с базами данных. ORM или Object-relational mapping (Объектно-реляционное отображение) — это технология программирования, которая

 
Безопасное хеширование паролей в PHP.

Безопасное хеширование паролей в PHP.

Такие хеширующие алгоритмы как MD5, SHA1 и SHA256 были спроектированы очень быстрыми и эффективными. При наличии современных технологий и оборудования, стало довольно просто выяснить результат

 

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: