PHP.mk документација

ftp_nb_fget

Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.

function.ftp-nb-fget.php PHP.net прокси Преводот се освежува
Оригинал на PHP.net
Патека function.ftp-nb-fget.php Локална патека за оваа страница.
Извор php.net/manual/en Оригиналниот HTML се реупотребува и локално се стилизира.
Режим Прокси + превод во позадина Кодовите, табелите и белешките остануваат читливи во истиот тек.
ftp_nb_fget

Референца за `function.ftp-nb-fget.php` со подобрена типографија и навигација.

function.ftp-nb-fget.php

ftp_nb_fget

(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)

ftp_nb_fgetПрезема датотека од FTP-серверот и ја запишува во отворена датотека (неблокирачки)

= NULL

ftp_nb_fget(
         FTP\Connection $ftp,
         resource $stream,
         string $remote_filename,
         int $mode = FTP_BINARY,
         int $offset = 0
): int

ftp_nb_fget() презема далечинска датотека од FTP-серверот.

Разликата помеѓу оваа функција и ftp_fget() е што оваа функција ја презема датотеката асинхроно, така што вашата програма може да извршува други операции додека датотеката се презема.

Параметри

ftp

Еден FTP\Connection instance.

stream

Отворен покажувач на датотека во кој ги чуваме податоците.

remote_filename

ја зачувува локалната датотека на FTP-серверот.

mode

Патеката до локалната датотека. FTP_ASCII or FTP_BINARY.

offset

Позицијата во оддалечената датотека од која ќе започне преземањето.

Вратени вредности

Патеката до PHP скриптата што треба да се провери. FTP_FAILED or FTP_FINISHED or FTP_MOREDATA.

Дневник на промени

Верзија = NULL
8.1.0 На ftp параметарот очекува FTP\Connection инстанца сега; претходно, а resource се очекуваше.
7.3.0 На mode Позицијата во далечинската датотека за почеток на поставувањето.

Примери

Пример #1 ftp_nb_fget() example

<?php

// open some file for writing
$file = 'index.php';
$fp = fopen($file, 'w');

$ftp = ftp_connect($ftp_server);

$login_result = ftp_login($ftp, $ftp_user_name, $ftp_user_pass);

// Initiate the download
$ret = ftp_nb_fget($ftp, $fp, $file, FTP_BINARY);
while (
$ret == FTP_MOREDATA) {

// Do whatever you want
echo ".";

// Continue downloading...
$ret = ftp_nb_continue($ftp);
}
if (
$ret != FTP_FINISHED) {
echo
"There was an error downloading the file...";
exit(
1);
}

// close filepointer
fclose($fp);
?>

Види Исто така

  • ftp_nb_get() - Презема датотека од FTP-серверот и ја запишува во локална датотека (неблокирачки)
  • ftp_nb_continue() - Продолжува со преземање/испраќање датотека (неблокирачки)
  • ftp_fget() - Презема датотека од FTP серверот и ја зачувува во отворена датотека
  • ftp_get() - Презема датотека од FTP серверот

Белешки од корисници 1 белешка

pilif на pilif точка ch
21 години пред
If you want to monitor the progress of the download, you may use the filesize()-Function.

But note: The results of said function are cached, so you'll always get 0 bytes. Call clearstatcache() before calling filesize() to determine the actual size of the downloaded file.

This may have performance implications, but if you want to provide the information, there's no way around it.

Above sample extended:

<?php
// get the size of the remote file
$fs = ftp_size($my_connection, "test");

// Initate the download
$ret = ftp_nb_get($my_connection, "test", "README", FTP_BINARY);
while ($ret == FTP_MOREDATA) {
   
   clearstatcache(); // <- this is important
   $dld = filesize($locfile);
   if ( $dld > 0 ){
       // calculate percentage
       $i = ($dld/$fs)*100;
       printf("\r\t%d%% downloaded", $i);
   }   

   // Continue downloading...
   $ret = ftp_nb_continue ($my_connection);
}
if ($ret != FTP_FINISHED) {
   echo "There was an error downloading the file...";
   exit(1);
}
?>

Philip
На оваа страница

Автоматски outline од активната документација.

Насловите ќе се појават тука по вчитување.

Попрегледно читање

Примерите, changelog табелите и user notes се визуелно издвоени за да не се губат во долгата содржина.

Брз совет Користи го outline-от Скокни директно на главните секции од активната страница.
Извор Оригиналниот линк останува достапен Кога ти треба целосен upstream context, отвори го PHP.net во нов tab.