Home » PHP » Fungsi ftp_nb_fget() PHP

Fungsi ftp_nb_fget() PHP

by Hanifah Nurbaeti
by Hanifah Nurbaeti

Section Artikel

Definisi dan Penggunaan

Fungsi ftp_nb_fget() digunakan untuk mendapatkan (mengunduh) file dari server FTP dan menyimpannya ke dalam file lokal terbuka (non-pemblokiran).

Tip: Fungsi ini (kebalikan dari ftp_fget()) mengambil file secara asinkron, sehingga kita bisa melakukan operasi lain saat file sedang didownload.

Syntax

ftp_nb_fget(ftp_conn, open_file, server_file, mode, startpos);

Nilai Parameter

ParameterDeskripsi
ftp_connRequired. Menentukan koneksi FTP yang akan digunakan
open_fileRequired. Menentukan file lokal terbuka tempat untuk menyimpan data
server_fileRequired. Menentukan file server yang akan didownload
modeOptional. Menentukan mode transfer. Nilai yang memungkinkan: FTP_ASCII atau FTP_BINARY
startposOptional. Menentukan posisi dalam file jarak jauh untuk mulai mengunduh

Detail Teknis

Return Value:Salah satu nilai berikut:

FTP_FAILED (kirim / terima gagal)
FTP_FINISHED (kirim / terima selesai)
FTP_MOREDATA (kirim / terima sedang berlangsung)
PHP Version:4.3+
PHP Changelog:PHP 7.3 – Parameter mode dibuat opsional.

Contoh
Unduh file dari server FTP, dan simpan ke file lokal terbuka (tanpa pemblokiran):

<?php
// Hubungkan dan login ke server FTP
$ftp_server = "ftp.example.com";
$ftp_conn = ftp_connect($ftp_server) or die("Could not connect to $ftp_server");
$login = ftp_login($ftp_conn, $ftp_username, $ftp_userpass);

$server_file = "somefile.txt";

// buka file lokal untuk menulis
$local_file = "local.txt";
$fp = fopen($local_file,"w");


// mulai mendownload
$d = ftp_nb_fget($ftp_conn, $fp, $server_file, FTP_BINARY)

while ($d == FTP_MOREDATA)
  {
  // Lakukan yang inign dilakukan
  
  // Lanjutkan mendownload
  $d = ftp_nb_continue($ftp_conn);
  }

if ($d != FTP_FINISHED)
  {
  echo "Error downloading $server_file";
  exit(1);
  }

// Tutup koneksi dan file handler
ftp_close($ftp_conn);
fclose($fp);
?>

You may also like