ТОП-10 популярных



Для работы с вещественными числами в MySQL предусмотрено три типа данных - это типы FLOAT, DOUBLE, DECIMAL. Числовой тип FLOAT...

НОУТБУК с блестящим экраном
Eсли выпустившая ноутбук фирма предлагает его в качестве «замены настольному ПК», то это должно подразумевать под собой нечто большее, чем...

БОЛЬШЕ БОЛЬШИХ LCD-мониторов
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...

Больше больших LCD-мониторов
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...

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

Иди и пиши. TravelMate C100
Планшетный компьютер платформы Tablet PC обязан в первую очередь быть легким, способным достаточно долго работать без подзарядки батарей. Эти требования...

ПОД ЛИТЕРОЙ «N»
Aтаку LCD-мониторов не остановить, а масштабы этого наступления даже немного пугают. Судите сами — многие пользователи только начинают приглядываться к новому для...


Для длинных строк, т.е. строк длиннее 255 символов, в MySQL предусмотрены типы BLOB (Binary Large Object, большой двоичный объект) и...

Размер объему не помеха.
С тех пор как компания Fujitsu отказалась от производства жестких дисков для настольных компьютеров, многие пользователи начали забывать о том,...


Какую только информацию мы не помещаем на компакт-диски: резервные копии важных данных, музыку, фильмы... Многие полагают, что главное - «купить...

PHP. Операции ввода-вывода на сетевом уровне. Часть Восьмая.


28-12-2009

10.3. Протокол FTP
Функции, описанные в этом разделе, позволяют установить соединение с FTP-серверами. FTP - это аббревиатура от File Transfer Protocol (протокол передачи файлов). Если файловые функции позволяют открывать файлы и работать с ними, задавая URL, а не путь в локальной файловой системе, то эти функции работают непосредственно с FTP-протоколом. Они обладают большей степенью управления и позволяют получать каталог находящихся на сервере файлов. FTP-функции были добавлены к арсеналу функций PHP Эндрю Скальски (Andrew Skalski).
FTP-протокол работает в одном из режимов: текстовом или двоичном. В текстовом режиме FTP транслирует окончания строк. Обычно для выбора режима PHP использует константы FTP_ASCII и FTP_IMAGE. Константы FTP_TEXT и FTP_BINARY были добавлены позднее для удобочитаемости.
Несколько новых функций позволяет осуществлять с помощью FTP-протокола незаблокированные передачи, что дает возможность вашему сценарию выполнять свой код при передаче в фоновом режиме.
boolean ftp_cdup(resource ftp)
Функция ftp_cdup изменяет рабочий каталог на каталог верхнего уровня для текущего рабочего каталога.
boolean ftp_chdir(resource ftp, string directory)
Функция ftp_chdir переносит рабочий каталог в заданный каталог.
boolean ftp_chmod(resource ftp, integer mode, string path)
Функция ftp_chmod меняет права доступа удаленного файла.
ftp_close(resource ftp)
Функция ftp_close закрывает FTP-соединение и освобождает связанную с ним память. 
resource ftp_connect(string host, integer port, integer timeout)
Функция ftp_connect (листинг 10.14) открывает FTP-соединение. Аргумент port является необязательным и по умолчанию равен 21. Аргумент timeout является необязательным и по умолчанию равен 90 секундам. Это значение имеет отношение ко всем FTP-операциям соединения.
В случае успешного соединения возвращается ресурс идентификатора FTP, который и будет использоваться в остальных FTP-командах, в противном случае - значение FALSE. После подключения, для того чтобы иметь возможность передавать команды, необходимо зарегистрироваться.

Листинг 9.14. Функция ftpconnect

<?php
//подключение к серверу
if(!($ftp = ftp_connect("www.leonatkinson.com"))) {
print("Подключение невозможно!<br>n"); exit();
}
print("Подключен<br>n"),• //регистрация
if(!ftp_login($ftp, "anonymous", "corephp@"))
{
print("Регистрация невозможна!<br>n"); exit();
}
print(" Зарегистрировался^^^"),-
print("Тип системы: " . ftp_systype($ftp) . "<br>n"); print("Тайм-аут: " .
ftp_get_option($ftp, FTP_TIMEOUT_SEC) . " секунд^^^"),-//убедитесь в том, что пассивный режим отключен ftp_pasv($ftp, FALSE);
print(" Рабочий каталог: " . ftp_pwd($ftp) . "<br>n"); print("Список:<br>n");
foreach(ftp_rawlist($ftp, ".") as $line)
{
print("$line<br>n");
}
print("<br>n");
if(!ftp_chdir($ftp, "pub/leon"))
{
print("Невозможно перейти в каталог pub/leon!<br>n");
}
print("Перешли в каталог pub/leon <br>n"); print(" Файлы:^^^"),-
foreach(ftp_nlist($ftp, ".") as $filename)
{
print("$filename<br>n");
}
print("<br>n");
if(!ftp_cdup($ftp))

print("Невозможно перейти в каталог верхнего уровня!<br>n");
}
// закрыть соединение ftp_close($ftp);
?>

boolean ftp_delete(resource ftp, string path)
Функция ftp_delete удаляет файл, находящийся на удаленном сервере. Аргумент link может быть получен с помощью функции ftp_connect. Аргумент path является путем к удаляемому файлу на удаленном сервере. Пример использования приведен в описании функции ftp_put.
boolean ftp_exec(resource ftp, string command)
Функция ftp_exec выполняет команду на удаленном сервере. Большинство серверов не разрешают таких действий.

Понравился материал? Поделитесь с друзьями!



<< Предыдущая статьяСледующая статья >>
PHP. Операции ввода-вывода на сетевом уровне. Часть Седьмая. PHP. Операции ввода-вывода на сетевом уровне. Часть Девятая.