Навигация
Главная
Поиск
Форум
FAQ's
Ссылки
Карта сайта
Чат программистов

Статьи
-Delphi
-C/C++
-Turbo Pascal
-Assembler
-Java/JS
-PHP
-Perl
-DHTML
-Prolog
-GPSS
-Сайтостроительство
-CMS: PHP Fusion
-Инвестирование

Файлы
-Для программистов
-Компонеты для Delphi
-Исходники на Delphi
-Исходники на C/C++
-Книги по Delphi
-Книги по С/С++
-Книги по JAVA/JS
-Книги по Basic/VB/.NET
-Книги по PHP/MySQL
-Книги по Assembler
-PHP Fusion MOD'ы
-by Kest
Professional Download System
Реклама
Услуги

Автоматическое добавление статей на сайты на Wordpress, Joomla, DLE
Заказать продвижение сайта
Программа для рисования блок-схем
Инженерный калькулятор онлайн
Таблица сложения онлайн
Популярные статьи
OpenGL и Delphi... 65535
Форум на вашем ... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Invision Power ... 65535
Содержание сайт... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Создание отчето... 65438
Модуль Forms 65201
Пример работы с... 64425
ТЕХНОЛОГИИ ДОСТ... 61857
Имитационное мо... 57766
Реклама
Сейчас на сайте
Гостей: 6
На сайте нет зарегистрированных пользователей

Пользователей: 13,085
новичок: nikita222dolban
Новости
Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ
Delphi, Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog, 3D MAX, Компас 3D
Заказать программу для Windows Mobile, Symbian

Меры близости на векторах в Delphi + Блок схемы
Моделирование вычислительного центра на GPSS + Отчет + Блок схема
Моделирование процесса обеспечивающего надежность функционирования АСУ Т...

Реклама



Подписывайся на YouTube канал о программировании, что бы не пропустить новые видео!

ПОДПИСЫВАЙСЯ на канал о программировании
Работаем с FTP на уровне PHP
Автор: Лисовский Сергей(crawtz)
slissovski@hot.ee

Я почти на 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 , в которой расскажу всё более подробно.

Спасибо за внимание :)
Опубликовал Kest November 06 2008 18:45:26 · 0 Комментариев · 6585 Прочтений · Для печати

• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •


Комментарии
Нет комментариев.
Добавить комментарий
Имя:



smiley smiley smiley smiley smiley smiley smiley smiley smiley
Запретить смайлики в комментариях

Введите проверочный код:* =
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Поделиться ссылкой
Фолловь меня в Твиттере! • Смотрите канал о путешествияхКак приготовить мидии в тайланде?
Загрузки
Новые загрузки
iChat v.7.0 Final...
iComm v.6.1 - выв...
Visual Studio 200...
CodeGear RAD Stud...
Шаблон для новост...

Случайные загрузки
AntiRus
Дарахвелидзе П., ...
CLR via C#
Сложный калькулятор
Распознавание иде...
Мод "проверочный ...
Adapter (пример D...
Система баннеро...
Allsubmitter 4.7 ...
PDA версия сайта
Нестандартные при...
Основы программир...
Учебник для продв...
База данных: Книж...
Библия хакера 2 К...
HTMLredaktor
Применение жадног...
Animation Effect ...
Разработка интерн...
Exe in exe

Топ загрузок
Приложение Клие... 100470
Delphi 7 Enterp... 87060
Converter AMR<-... 20078
GPSS World Stud... 12822
Borland C++Buil... 11835
Borland Delphi ... 8604
Turbo Pascal fo... 7039
Visual Studio 2... 4999
Калькулятор [Ис... 4800
FreeSMS v1.3.1 3542
Случайные статьи
Автоматизация ручн...
Задача о 8 ладьях
Constant and саsе ...
Серверные кластеры...
Задачи клиентского...
Подписанное сообще...
Выберите то, что м...
В книге рассмотрен...
Фаза подтверждения
Разрешение адреса
Машинное представл...
Миниатюризация ком...
Выделение структур...
Акустический контроль
В результате вам п...
Работа с транзакта...
Разработчик объект...
услуг Интернета (I...
Doorway. Дорвей в ...
Адреса, локальные ...
Установка и удален...
Свойства Dynamic HTML
Выбираем значение ...
убедиться, что сет...
Форма, демонстри...
Статистика



Друзья сайта
Программы, игры


Полезно
В какую объединенную сеть входит классовая сеть? Суммирование маршрутов Занимают ли таблицы память маршрутизатора?