Вы не авторизированы! Логин:  Пароль:  Запомнить:    Зарегистрироваться
Забыл пароль
 
 
 

PHP: работа с FTP

SVD programming - Программирование Delphi, HTML, PHP, CGI. Обзоры софта, ReactOS и многое другое...
 
Главная - Новости - Публикации - Файлы - Ссылки - Форум Обратная связь
 


Друзья сайта ::

Сайтом управляют ::

Друзья сайта ::
PHP » PHP: работа с FTP
Автор: Лисовский Сергей / Дата: 17:28 17.06.2006
Комментарии: Комментарии (5)
Рейтинг статьи: 0
Я почти на 100% уверен , что вы уже работали с FTP. Сейчас я поведаю, как работать с ним на уровне языка PHP. Итак , для начала вам необходимо вспомнить, как работать в PHP с обычными файлами: сначала надо открыть файл, выполнить с ним какие-либо действия и, наконец, закрыть его. Причем при записи и чтении файла вы не обойдетесь без помощи функции "fopen" (если только вы не используете функцию "file").

Итак, теперь, собственно, про сам FTP.

Работа с FTP начинается с открытия "потока" (stream) и делается это функцией "ftp_connect()" (аналогично функции fopen в работе с файлами).

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


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

Пример:

Код:
$open = ftp_connect("ftp.server.com", 21, 30);


Для входа по вашему аккаунту на сервере воспользуйтесь функцией "ftp_login()".

Пример:

Код:
ftp_login($open, "your_username", "your_password");


А лучше это сделать следующим образом:

Код:
if (!ftp_login($open, "your_username", "your_password"))
exit("Не могу соединиться");


Параметр "your_username" должен содержать ваш username для входа, а "your_password" - соответственно, ваш пароль. Переменная $open является идентификатором соединения с ftp узлом, к которому вы подключились с помошью "ftp_connect".

Все. Если вышеуказанный код не выдал вам никаких ошибок, значит вы успешно подключились к ftp узлу.

А теперь поговорим о функциях работы с FTP:

Функция ftp_mkdir() создаёт директорию, пример:

Код:
ftp_mkdir($open,"test"); //Создали папку "test".


Функция ftp_rmdir удалит папку:

Код:
ftp_rmdir($open,"test"); //Удалили созданную нами папку папку "test".


Переименовать файл можно функцией "ftp_rename()":

Код:
ftp_rename($open,"test.txt","ok_test.txt");


Мы переименовали "test.txt" в "ok_test.txt" , вместо "test.txt" может быть любой другой файл.

Просмотреть содержимое вашего каталога можно следующим образом:

Код:
$site = ftp_nlist($open,"");
$d = 5;
for ($i = 0; $i < $d; $i++)
echo $site[$i];


Функция "ftp_nlist()" возвращает один файл из вашего каталога , если вам нужно просмотреть все файлы, то ее сдедует использовать в цикле, как сделано выше.

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

Код:
echo ftp_size($open, "test.txt");


Вам может понадобится узнать дату последнего изменения файла . Это осуществимо с помощью функции ftp_mdtm (учтите, что время возвращается в UNIX-формате):

Код:
$mod = ftp_mdtm($open,"test.txt");
echo $mod;


Заметьте, функция не работает с директориями. Для удаления файла воспользуйтесь функцией ftp_delete(), например:

Код:
ftp_delete($open,"test.txt");


Закрывается же соединение функцией "ftp_close()".

Код:
ftp_close($open);


Эта функция аналогична функции fclose() при работе с файлами, в нашем примере идентификатор соединения находится в переменной "$open". Теперь просто фрагмент бессмысленного кода :

Код:
ftp_connect("ftp.hot.ee","21","100");
if(!ftp_login($open,"prosto_user","ahahaha"))
exit("Не могу соединиться");
mkdir($open,"test"); //Создали директорию
rmdir($open,"test"); //Удалили директорию
rename($open,"test.txt","test_i_eche_raz_test.txt"); //Переименовали файл
ftp_close($open);//Закрыли поток


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

Спасибо за внимание :)

Источник: http://codenet.ru
Автор : Лисовский Сергей
Комментарии: Комментарии (5)

Внимание!

Друзья сайта
Голосование ::
Случайные статьи ::
Добавления в форуме ::
Новые комментарии ::
Пользователи on-line ::
0 пользователь, 113 гостей
 
Страница создана за 0.012 секунд

SQL общее время: 0.004 секунд
SQL запросов всего: 15
Администрация сайта не несет ответственности за содержание рекламных материалов, а так же за информацию размещаемой посетителями. При использовании материалов сайта ссылка на svdpro.info обязательна.

Powered by LDU 802

Рейтинг@Mail.ru
Copyright © 2005 - 2011 «SVD Programming»
Версия сайта для коммуникаторов
Обратная связь - Карта сайта