FTP
Файлы и сети
🕛 01.11.2006, 13:28
При использовании модуля FTP им определяются две константы: FTP_ASCII и FTP_BINARY. Функции используют дескриптор сеанса подключения (это первый аргумент, обозначенный как ftp_stream).
Простейший сеанс FTP может проходить следующим образом:
<?php
/.' открытие простого FTP сеанса
$connjd = ftp_connect("$ftp_server").
// login with user-name and password
$login_result = ftp_login
($conn_id. "$ftp_user_name", "$ftp_user_pass").
// проверка связи
if ((!$conn_-d) || (!$login_result))
{ echo 'Невозможно установить
Ftp связь! ".
"Для сервера $ftp_server. пользователю
Suser", die; } else
echo "Подключение к
серверу $ftp_server успешно!"; }
// загрузить файл Supload =
ftp_put($conn_ia. "$dest,ination_file".
"Ssourcejile". rrp_BINARY):
// проверка загрузки if (!$upload)
{ echo "Загрузка не удалась!";
} else { echo "Файл $source_file был
загружен как $destination_file": }
// закрыть поток FTP
ftp_quitl$copn_id). ?>
ftp_connect
Подключение к FTP-серверу
Int ftp_connect (string host [, int port])
Аргумент host указывает имя сервера, к которому осуществляется доступ, a port - используемый для подключения порт (если он не указан или указывается 0, то используется порт по умолчанию - 21).
Возвращает дескриптор потока FTP или FALSE при ошибке.
ftp_ pasv
Переключение пассивного режима
int ftp_pasv (int ftp_stream. int pasv)
Переключает режим подключения в пассивный (если аргумент pasv равен TRUE) или активный (если аргумент pasv равен FALSE). В пассивном режиме передача данных инициируется клиентом, а не сервером (это бывает необходимо при блокировке портов у клиента).
Возвращает TRUE или FALSE - при ошибке.
ftp_ login
Вход на сервер FTP
int ftpjogin (int ftp_stream, string usemame, string password)
Зарегистрироваться в системе под именем username с паролем password.
Возвращает TRUE или FALSE - при ошибке.
ftp_quit
Завершение сеанса FTP
int ftp_quit (int ftp_stream)
ftp_pwd
Определение текущего каталога
string ftp_pwd (int ftp_stream)
Возвращает текущий каталог FTP-сервера или FALSE - при ошибке.
ftp_cdup
Переход в корневой каталог
int ftp_cdup (int ftp_stream) Возвращает TRUE или FALSE - при ошибке.
ftp_chdir
Переход в каталог
int ftp_chdir (int ftp_stream, string directory)
Возвращает TRUE или FALSE - при ошибке.
ftp_mkdir
Создание каталога
string ftpjnkdir (int ftp_stream, string directory)
Возвращает имя созданного каталога directory или FALSE - при ошибке.
ftp_rmdir
Удаление каталога
int ftp_rmdir (int ftp_streara, string directory) Возвращает TRUE или FALSE - при ошибке.
ftp_nlist
Получение листинга каталога
array ftp_nlist (int ftp_stream, string directory) Возвращает массив файловых имен или FALSE - при ошибке.
ftp_rawlist
Получение детализированного листинга каталога
array ftp_raw1ist (int ftp_stream, string directory)
Исполняет РТР-команду LIST, и возвращает ее результат в массиве, где каждый элемент соответствует строке текста «как есть». Идентификатор типа системы, возвращаемый ftp_systype(), может быть использован для определения того, как следует интерпретировать результаты.
ftp_systype
Получение системного идентификатора типа FTP-сервера
string ftp_systype (int ftp_stream)
Возвращает строковое значение или FALSE - при ошибке.
ftp_ get
Загрузка файла с FTP
int ftp_get (int ftp_stream, string 1ocal_file, string remote_file, int mode)
Загружает удаленный файл remote_file с сервера FTP и сохраняет его локально под именем local_file. Режим передачи mode должен быть указан либо как FTP_ASCII, либо как FTP_BINARY.
Возвращает TRUE или FALSE - при ошибке.
ftp_get
Загрузка и запись файла
int ftp_fget (int ftp_stream, int fp, string remote_file, int mode)
Загружает удаленный файл remote_file с сервера FTP и сохраняет его содержимое в открытом файле, имеющем дескриптор fp. Режим передачи mode должен быть указан либо как FTP_ASCII, либо как FTP_ BINARY.
Возвращает TRUE или FALSE - при ошибке.
ftp_put
Загрузка файла на сервер FTP
int ftp_put (int ftp_stream, string remote_file, string localjfile, int mode)
Сохраняет файл local_file на сервере FTP под именем remote_file. Режим передачи mode должен быть указан либо как FTP_ASCII, либо как FTP_BINARY.
Возвращает TRUE или FALSE - при ошибке.
Supload = ftp_put
($conn_id. "C:\\myfile.txt".
"/myfile.txt". FTP_ASCII);
ftp_fput
Чтение и загрузка файла на сервер
int ftp_fput (int ftp_stream, string remote_file, int fp, int mode)
Читает открытый файл (дескриптора fp) до сто конца и загружает его на сервер FTP под именем remote_fi!e. Режим передачи mode должен быть указан либо как FTP_ASCII, либо как FTP_BINARY.
Возвращает TRUE пли FALSE - при ошибке.
ftp_size
Определение размера файла
int ftp_size (int ftp_stream, string remotejfile)
Возвращает размер файла в байтах или -1 - при ошибке. Не все серверы поддерживают эту возможность.
ftp_mdtm
Получение времени последней модификации файла
int ftpjndtm (int ftp_stream, string remote_file)
Возвращает время в формате «UNIX timcstamp» или -1 - при ошибке.
Функция не работает с каталогами.
ftp_rename
Переименование файла на сервере
int ftp_rename (int ftp_stream, string from, string to)
Переименовывает файл from в to. Возвращает TRUE или FALSE - при ошибке.
ftp_delete
Удаление файла на сервере
int ftpjJelete (int ftp_stream. string path) Возвращает TRUE или FALSE - при ошибке.
flp_site
Выполнение команды SITE на сервере
int ftp_site (int ftp_stream, string cmd)
Посылает серверу команду cmd. Возвращает TRUE или FALSE - при ошибке.
Так как команды SITE не стандартизированы, они могут различаться. Обычно они полезны для изменения прав доступа к файлам и групповой принадлежности.