Иногда бывает нужно загрузить различные файлы по FTP через PHP . Например, можно подправить какой-нибудь движок, а затем определить все свежие файлы (по дате изменения) и загрузить их обратно на сервер. Таким образом, если движок большой, то не придётся ждать, пока загрузятся все файлы. Но это лишь пример того, как...
Иногда бывает нужно загрузить различные файлы по FTP через PHP. Например, можно подправить какой-нибудь движок, а затем определить все свежие файлы (по дате изменения) и загрузить их обратно на сервер. Таким образом, если движок большой, то не придётся ждать, пока загрузятся все файлы. Но это лишь пример того, как можно использовать FTP через PHP. А теперь давайте разберём, как это делается.
Разберём простой пример по работе с FTP через PHP:
<?php
$ftp = ftp_connect("ftp.site.ru", "21", "30"); // Создаём идентификатор соединения (адрес хоста, порт, таймаут)
$login = ftp_login($ftp, "admin", "password"); // Авторизуемся на FTP-сервере
if (!$login) exit("Ошибка подключения");
ftp_mkdir($ftp, "myrusakov"); // Создаём директорию
ftp_chdir($ftp, "myrusakov"); // Заходим в созданную директорию
ftp_put($ftp, "image.bmp", "image.bmp", FTP_BINARY); // Загружаем image.bmp на FTP в бинарном режиме
ftp_put($ftp, "new_doc.xml", "doc.xml", FTP_BINARY); // Загружаем doc.xml (делаем имя new_doc.xml) на FTP в бинарном режиме
$files = ftp_nlist($ftp, "."); // Получаем список файлов из текущей директории
for ($i = 0; $i < count($files); $i++) {
echo $files[$i]."<br />"; // Выводим все полученные файлы
}
ftp_get($ftp, "local.xml", "new_doc.xml", FTP_BINARY);
ftp_close($ftp);
?>
Код хорошо прокомментирован, поэтому, что происходит, думаю, Вы понимаете. Безусловно, это лишь часть функций, самые важные. А с полным списком Вы можете ознакомиться в справочнике.
Не могу сказать, что я очень часто работаю с FTP через PHP, но уметь это необходимо любому разработчику, поэтому и написал эту статью.
