ftp_nb_get

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

ftp_nb_getFTP sunucusundan (engellenmeyen kipte) bir dosya indirir

Açıklama

ftp_nb_get(
    FTP\Connection$ftp,
    string$yerel_dosya,
    string$uzak_dosya,
    int$kip = FTP_BINARY,
    int$devam_yeri = 0
): int|false

ftp_nb_get() işlevi FTP sunucusundan uzak_dosya dosyasını alır, yerel dosya sistemine yerel_dosya adıyla kaydeder.

Bu işlevin ftp_get() işlevinden farkı bu işlevin dosyayı eşzamansız olarak indirmesidir. Yani indirme işlemi sırasında başka işlemler yapabilirsiniz.

Bağımsız Değişkenler

ftp

Bir FTP\Connection nesnesi.

yerel_dosya

Yerel dosyanın yolu (dosya varsa üzerine yazılır).

uzak_dosya

Dosyanın FTP sunucusundaki yolu.

kip

Aktarım kipi. FTP_ASCII veya FTP_BINARY olabilir.

devam_yeri

Uzak dosyada indirmenin başlayacağı konum.

Sürüm Bilgisi

Sürüm: Açıklama
8.1.0ftp bağımsız değişkeni artık FTP\Connection nesnesi kabul ediyor; evvelce ftp özkaynağı kabul ediyordu.
7.3.0kip bağımsız değişkeni artık seçimlik, evvelce zorunluydu.

Dönen Değerler

FTP_FAILED veya FTP_FINISHED ya da FTP_MOREDATA veya yerel_dosya açılamazsa false döner.

Örnekler

Örnek 1 - ftp_nb_get() örneği

<?php

// İndirmeyi başlatalım
$ret = ftp_nb_get($ftp, "test", "README", FTP_BINARY);
while (
$ret == FTP_MOREDATA) {

// Başka bir şeyler yapalım
echo ".";

// İndirmeye devam...
$ret = ftp_nb_continue($ftp);
}
if (
$ret != FTP_FINISHED) {
echo
"Dosya indirilirken bir hata oluştu...";
exit(
1);
}
?>

Örnek 2 - ftp_nb_get() ile indirmeyi devam ettirmek

<?php

// İndirmeyi tekrar başlatalım
$ret = ftp_nb_get($ftp, "test", "README", FTP_BINARY,
filesize("test"));
// VEYA: $ret = ftp_nb_get($ftp, "test", "README",
// FTP_BINARY, FTP_AUTORESUME);
while ($ret == FTP_MOREDATA) {

// Başka şeyler yapalım
echo ".";

// İndirmeye devam...
$ret = ftp_nb_continue($ftp);
}
if (
$ret != FTP_FINISHED) {
echo
"Dosya indirilirken bir hata oluştu.....";
exit(
1);
}
?>

Örnek 3 - ftp_nb_get() ile indirmeyi yeni bir dosyanın 100. baytından sürdürmek

<?php

// otomatik konumlamayı kapatalım
ftp_set_option($ftp, FTP_AUTOSEEK, false);

// İndirmeyi başlatalım
$ret = ftp_nb_get($ftp, "yenidosya", "BENiOKU", FTP_BINARY, 100);
while (
$ret == FTP_MOREDATA) {



Yukarıdaki örnekte, yenidosya, FTP sunucusundaki BENiOKU dosyasından 100 bayt kısa olacaktır. Bunun sebebi indirmenin 100. bayttan başlatılmış olmasıdır. Eğer FTP_AUTOSEEK seçeneğine false atamasaydık yenidosya dosyasının ilk 100 baytı '\0' karakterleriyle doldurulacaktı.

Ayrıca Bakınız

  • ftp_nb_fget() - FTP sunucusundan dosyayı (engellenmeyen kipte) indirip bir dosya tanıtıcısına yazar
  • ftp_nb_continue() - Dosya alımını/gönderimini (engellenmeyen kipte) kaldığı yerden devam ettirir
  • ftp_fget() - FTP sunucusundan dosyayı indirip bir dosya tanıtıcısına yazar
  • ftp_get() - FTP sunucusundan bir dosya indirir
To Top