ftp_nb_get

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

ftp_nb_get�� FTP �������ϻ�ȡ�ļ���д�뱾���ļ���non-blocking��

˵��

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

ftp_nb_get() ����������ȡ���� remote_file ָ���ĵ�Զ���ļ��������浽�ɲ��� local_file ָ���ı����ļ�������ģʽ���� mode ֻ��Ϊ FTP_ASCII (�ı�ģʽ) �� FTP_BINARY (������ģʽ) ���֡��� ftp_get() ������ͬ���ǣ��˺����ϴ��ļ���ʱ����õ����첽����ģʽ��Ҳ����ζ�����ļ����͵Ĺ����У���ij�����Լ��������������顣

���� FTP_FAILED��FTP_FINISHED �� FTP_MOREDATA��

Example #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);
}
?>

Example #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);
}
?>

Example #3 �� ftp_nb_get() �� 100 ��λ�ö�����������Ϊ "newfile"

// ��ֹ�Զ���Ѱ
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" �ļ��ȷ������ϵ��ļ� "README" ҪС 100 �ֽڡ�������Ϊ�����Ǵ��ļ���ƫ���� 100 ����ʼ��ȡ�ģ����û�н�ֹ FTP_AUTOSEEK���� "newfile" ��ǰ 100 �ֽڽ����� '\0'��

�μ� ftp_nb_fget()��ftp_nb_continue()��ftp_get() �� ftp_fget()��