П О Р Т А Л                            
С Е Т Е В Ы Х                          
П Р О Е К Т О В                        
  
Поиск по сайту:
                                                 
Главная

О проекте

Web-мастеру
     HTML & JavaScript
     SSI
     Perl
     PHP
     XML & XSLT
     Unix Shell

MySQL

Безопасность

Хостинг

Другое








Самое читаемое:

Учебник PHP - "Для Чайника".
Просмотров 3494 раз(а).

Иллюстрированный самоучитель по созданию сайтов.
Просмотров 6096 раз(а).

Учебник HTML.
Просмотров 3257 раз(а).

Руководство по PHP5.
Просмотров 5483 раз(а).

Хостинг через призму DNS.
Просмотров 4118 раз(а).

Подборка текстов стандартных документов.
Просмотров 55760 раз(а).

Учебник PHP - Самоучитель
Просмотров 3076 раз(а).

Документация на MySQL (учебник & справочное руководство)
Просмотров 5322 раз(а).

Внешние атаки...
Просмотров 3815 раз(а).

Учебник PHP.
Просмотров 2815 раз(а).

SSI в примерах.
Просмотров 37450 раз(а).



 
 
| Добавить в избранное | Сделать стартовой | Помощь





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

ftp_nb_get

(PHP 4 >= 4.3.0, PHP 5)

ftp_nb_get -- Скачивает файл с FTP сервера в асинхронном режиме и сохраняет его в локальный файл

Описание

int ftp_nb_get ( resource ftp_stream, string local_file, string remote_file, int mode [, int resumepos] )

ftp_nb_get() скачивает удалённый файл с FTP сервера и сохраняет его в локальный файл.

Разница между это функцией и ftp_get() заключается в том, что эта функция получает файл асинхронно, так что ваша программа может совершать другие операции, пока файл cкачивается.

Список параметров

ftp_stream

Идентификатор соединения с FTP сервером

local_file

Путь к локальному файлу (файл будет перезаписан, если уже существует).

remote_file

Путь к удалённому файлу.

mode

Режим передачи. Должен быть либо FTP_ASCII, либо FTP_BINARY.

resumepos

Возвращаемые значения

Возвращает FTP_FAILED, FTP_FINISHED или FTP_MOREDATA.

Примеры

Пример 1. Пример использования ftp_nb_get()

<?php

// Начало скачивания
$ret = ftp_nb_get($my_connection, "test", "README", FTP_BINARY);
while (
$ret == FTP_MOREDATA) {
   
   
// производим какие-то дествия ...
   
echo ".";

   
// продолжение скачивания ...
   
$ret = ftp_nb_continue($my_connection);
}
if (
$ret != FTP_FINISHED) {
   echo
"При скачивании файла произолшла ошибка...";
   exit(
1);
}
?>

Пример 2. Возобновление скачивания файла с помощью ftp_nb_get()

<?php

// Начало скачивания
$ret = ftp_nb_get($my_connection, "test", "README", FTP_BINARY,
                      
filesize("test"));
// ИЛИ: $ret = ftp_nb_get($my_connection, "test", "README",
//                           FTP_BINARY, FTP_AUTORESUME);
while ($ret == FTP_MOREDATA) {
   
   
// производим какие-то дествия ...
   
echo ".";

   
// продолжение скачивания ...
   
$ret = ftp_nb_continue($my_connection);
}
if (
$ret != FTP_FINISHED) {
   echo
"При скачивании файла произолшла ошибка...";
   exit(
1);
}
?>

Пример 3. Скачивание файла начиная с позиции 100 в новый файл с помощью ftp_nb_get()

<?php

// Запрет FTP_AUTOSEEK
ftp_set_option($my_connection, FTP_AUTOSEEK, false);

// Начало скачивания
$ret = ftp_nb_get($my_connection, "newfile", "README", FTP_BINARY, 100);
while (
$ret == FTP_MOREDATA) {

   
/* ... */
   
   // продолжение скачивания ...
   
$ret = ftp_nb_continue($my_connection);
}
?>

В последнем примере, "newfile" будет на 100 байт меньше, чем "README" на FTP сервере, потому что скачивание начинается со смещения 100. Если не запретить FTP_AUTOSEEK, первые 100 байт файла "newfile" будут содержать '\0'.



Если Вы не нашли что искали, то рекомендую воспользоваться поиском по сайту:
 





Copyright © 2005-2016 Project.Net.Ru