Руководство по PHP
Пред. |  | След.

# XXXIX. Функции для работы с FTP

# Введение

Функции этого модуля обеспечивают доступ к серверам по протоколу FTP (File Transfer Protocol), определенному в http://www.faqs.org/rfcs/rfc959. Модуль позволяет выполнять множество довольно сложных операций. Если требуется лишь прочитать или записать файл на сервере FTP, можно воспользоваться ftp:// ссылками и функциями для работы с файловой системой, которые более просты в использовании.

# Требования

Эти функции всегда доступны.

# Установка

Для использования FTP функций, вы должны указать директиву --enable-ftp во время установки PHP 4 или --with-ftp при использовании PHP 3.

Версия PHP для Windows имеет встроенную поддержку данного расширения. Это означает, что для использования данных функций не требуется загрузка никаких дополнительных расширений.

# Настройка во время выполнения

Данное расширение не определяет никакие директивы конфигурации в `php.ini`.

# Типы ресурсов

Этот модуль использует один тип ресурса - идентификатор соединения с FTP сервером, возвращаемый функцией ftp_connect() или ftp_ssl_connect().

# Предопределенные константы

Перечисленные ниже константы определены данным расширением и могут быть доступны только в том случае, если PHP был собран с поддержкой этого расширения или же в том случае, если данное расширение подгружается во время выполнения.

`FTP_ASCII` (integer)

`FTP_TEXT` (integer)

`FTP_BINARY` (integer)

`FTP_IMAGE` (integer)

`FTP_TIMEOUT_SEC` (integer)

  Дополнительная информация доступна в описании функции ftp_set_option().

Следующие константы появились в PHP 4.3.0.

`FTP_AUTOSEEK` (integer)

  Дополнительная информация доступна в описании функции ftp_set_option().

`FTP_AUTORESUME` (integer)

  Автоматически определять позицию в файле, с которой начинается докачка при использовании команд GET и PUT (имеет смысл только совместно с `FTP_AUTOSEEK`)

`FTP_FAILED` (integer)

  Асинхронная операция завершилась неудачно

`FTP_FINISHED` (integer)

  Асинхронная операция окончена

`FTP_MOREDATA` (integer)

  Асинхронная операция еще не завершена

# Примеры

Пример 1. Пример использования функций FTP
`<?php // установка соединения $conn_id = ftp_connect($ftp_server); // вход с именем пользователя и паролем $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass); // проверка соединения if ((!$conn_id) || (!$login_result)) { echo "Не удалось установить соединение с FTP сервером!"; echo "Попытка подключения к серверу $ftp_server под именем $ftp_user_name!"; exit; } else { echo "Установлено соединение с FTP сервером $ftp_server под именем $ftp_user_name"; } // закачивание файла $upload = ftp_put($conn_id, $destination_file, $source_file, FTP_BINARY); // проверка результата if (!$upload) { echo "Не удалось закачать файл!"; } else { echo "Файл $source_file закачен на $ftp_server под именем $destination_file"; } // закрытие соединения ftp_close($conn_id); ?>`

Пред. | Начало | След.
fribidi_log2vis | Уровень выше | ftp_alloc