تابع ()ftp_nb_fput
مثال
باز کردن یک فایل محلی و آپلود کردن آن به صورت رویدادگرا، در یک فایل در سرور FTP:
<?php
// connect and login to FTP server
$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 = "serverfile.txt";
// open local file
$local_file = "localfile.txt";
$fp = fopen($local_file,"r");
// initiate upload
$d = ftp_nb_fput($ftp_conn, $server_file, $fp, FTP_BINARY)
while ($d == FTP_MOREDATA)
{
// do whatever you want
// continue uploading
$d = ftp_nb_continue($ftp_conn);
}
if ($d != FTP_FINISHED)
{
echo "Error uploading $local_file";
exit(1);
}
// close connection
ftp_close($ftp_conn);
?>
تعریف و کاربرد
تابع ()ftp_nb_fput یک فایل محلی باز شده را در یک سرور FTP آپلود می کند( به صورت رویداد گرا یا non-blocking).
نکته: این تابع(برخلاف تابع ftp_fput) فایل مورد نظر را به صورت ناهمگام(asynchronously) دریافت می کند، بنابراین شما می توانید هنگامی که فایل در حال دانلود شدن است، دیگر عملیات را انجام دهید.
نحوه نوشتن
پارامترها | توضیحات |
---|---|
ftp_connection |
ضروری. کانکشن ftp که قرار است از آن استفاده کنیم را مشخص می کند. |
remote_file |
ضروری. مسیر فایلی که قرار است در آن آپلود کنیم را مشخص می کند. |
open_file |
ضروری. فایل محلی که باید آن را باز کنیم را مشخص می کند. |
mode |
ضروری. حالت انتقال را مشخص می کند. مقادیر امکان پذیر : FTP_ASCII یا FTP_BINARY . |
startpos |
اختیاری. موقعیتی در فایل از راه دور که قرار است آپلود را از آنجا شروع کنیم را مشخص می کند. |
جزئیات تکنیکی
مقدار برگشتی: |
این تابع یکی از مقادیر زیر را برمی گرداند: FTP_FAILED (send/receive failed)
|
---|---|
ورژن PHP: | 4.3+ |
- نوشته شده توسط احسان عباسی
- بازدید: 2451