ftp://

ftps://

ftp:// -- ftps://Доступ к URL-адресам по протоколу FTP(s)

Описание

Разрешает читать существующие файлы и создавать новые файлы через FTP-протокол. Если FTP-сервер не поддерживает пассивный режим, соединение будет невозможно.

Можно открыть файл либо для чтения, либо для записи, но не одновременно для того и другого. Если файл на FTP-сервере уже существует, и файл пытаются открыть для записи без указания опцию контекста overwrite, соединение будет невозможно. Если необходимо перезаписать существующие файлы на FTP-сервере, указывают опцию overwrite в контексте и открывают файл для записи. Кроме того, использовать модуль FTP.

Если установили директиву from в файле php.ini, то это значение будет отправлено как пароль при анонимном подключении к FTP-севрверу.

Использование

  • ftp://example.com/pub/file.txt
  • ftp://user:password@example.com/pub/file.txt
  • ftps://example.com/pub/file.txt
  • ftps://user:password@example.com/pub/file.txt

Опции

Основная информация
Атрибут Поддерживается
Ограничение по allow_url_fopen Да
Чтение Да
Запись Да (новые или существующие файлы с опцией overwrite)
Добавление Да
Одновременное чтение и запись Нет
Поддержка stat() filesize(), filemtime(), filetype(), file_exists(), is_file() и is_dir().
Поддержка unlink() Да
Поддержка rename() Да
Поддержка mkdir() Да
Поддержка rmdir() Да

Примечания

Замечание:

Протокол FTPS поддерживается только тогда, когда включили поддержку модуля OpenSSL.

Если сервер не поддерживает SSL, то соединение переключается обратно на обычный нешифрованный протокол FTP.

Замечание: Дополнение
Файлы можно дописать через URL-обёртку ftp://.

Смотрите также

add a note

User Contributed Notes 3 notes

up
-9
php at f00n dot com
20 years ago
For Intranet purposes I found I preferred to move my file via ftp functions to match the session user's ftp account and put the file in a holding bay so I knew who it was from.

The FTP wrapper method will NOT do this if your ftp server does NOT support passive mode.

eg. an ftp server behind NAT/routing
up
-15
Anonymous
18 years ago
<?
$str ="replace all contenents";
$filew="ftp://gufo:gufo@192.168.1.55:21/jj.php";
$opts = array('ftp' => array('overwrite' => true));
$context = stream_context_create($opts);
$strwri = file_put_contents($filew,$str,LOCK_EX,$context);
?>
up
-15
fazil dot stormhammer dot nospam at gmail dot com
16 years ago
Document says "Allows read access to existing files and creation of new files via FTP. If the server does not support passive mode ftp, the connection will fail. "

As of version 5.2.5 at least fopen("ftp://...") uses an ACTIVE mode connection by default (it issues an FTP PORT command but not a PASV command). To force passive mode:

$f = fopen("ftp://...");
ftp_pasv($f, true);
To Top