Работа с FTP на PHP


В этой небольшой заметке набросаю просто основы, примеры кода для работы с удаленным сервером по FTP на языке PHP.

Подключение

//подключаемся по фтп
$ftp = ftp_connect($ftp_server);
$login_result = ftp_login($ftp, $ftp_user_name, $ftp_user_pass);
ftp_set_option($ftp, FTP_USEPASVADDRESS, false); // не игнорируем IP-адрес, возвращённый сервером
ftp_pasv($ftp, true);//включаем пассивный режим

if ((!$ftp) || (!$login_result)) {
    die("Не удалось подключиться к FTP-серверу!");
}
Текущая папка

Важная команда, иногда при соединении можно попасть вообще не в ту папку, какую вы думаете.

ftp_pwd($ftp)
Переход в папку

if (ftp_chdir($ftp, "new_dir")) {
    echo "Новая текущая текущая папка: " . ftp_pwd($ftp);
} else {
    echo "Не удалось сменить папку";
}
Создание папки

//$dir – полный путь к папке
ftp_mkdir($ftp, $dir);
Заливка файла

//$remote_file – удаленный файл, полный путь
//$fileName – текущий файл, относительный путь
if (ftp_put($ftp, $remote_file, $fileName, FTP_BINARY)) {
 echo "Файл успешно залит на сервер";
} else {
 echo "Не удалось залить файл на сервер";
}
Закрытие соединения

ftp_close($ftp);
Автор этого материала - я - Пахолков Юрий. Я оказываю услуги по написанию программ на языках Java, C++, C# (а также консультирую по ним) и созданию сайтов. Работаю с сайтами на CMS OpenCart, WordPress, ModX и самописными. Кроме этого, работаю напрямую с JavaScript, PHP, CSS, HTML - то есть могу доработать ваш сайт или помочь с веб-программированием. Пишите сюда.

тегизаметки, php, ftp




Отправляя сообщение я подтверждаю, что ознакомлен и согласен с политикой конфиденциальности данного сайта.




C#: перевод из м/с в км/ч
C#: объединение текстовых файлов с одинаковыми именами из разных папок
Урок 1. История PHP