This function is nice but like the ftp_size function it too has a flaw if your file is larger then 2.1Gb or 2.1 Billion Btyes it cannot be properly allocated.
ftp_alloc
(PHP 5)
ftp_alloc — Karşıya dosya yüklemek için bir FTP sunucusuna yer ayırma isteği yapar
Açıklama
$ftp_akımı
, int $dosyaboyu
[, string &$sonuç
] )Yüklenecek dosyaya yer ayırmasi için FTP sunucusuna bir ALLO komutu gönderir.
Bilginize:
Her FTP sunucusu bu komutu desteklemez. Bu sunucular komutun desteklenmediğini veya önceden yer ayırmanın gerekmediğini ve istemcinin işleme devam ederse sorun çıkmayacağını belirten bir başarısızlık kodu (
FALSE) döndürebilir. Bu bakımdan, açıkça yer ayırmayı gerektiren sunucuları hesaba katarak bu işlevi de kullanmakta yarar vardır.
Değiştirgeler
-
ftp_akımı -
FTP bağlantısının bağlantı tanıtıcısı.
-
dosyaboyu -
Ayrılacak bayt sayısı.
-
sonuç -
Değiştirge belirtildiği takdirde sunucunun yanıtıyla ilgili ileti bu değiştirgeye yerleştirilir.
Dönen Değerler
Başarı durumunda TRUE, başarısızlık durumunda FALSE döner.
Örnekler
Örnek 1 - ftp_alloc() örneği
<?php
$file = "/home/user/myfile";
// Sunucuya bağlanalım
$conn_id = ftp_connect('ftp.example.com');
$login_result = ftp_login($conn_id, 'anonymous', 'user@example.com');
if (ftp_alloc($conn_id, filesize($file), $result)) {
echo "Sunucuda yer ayrıldı. $file gönderiliyor.\n";
ftp_put($conn_id, '/incomming/myfile', $file, FTP_BINARY);
} else {
echo "Sunucuda yer ayrılamadı. Sunucunun yanıtı: $result\n";
}
ftp_close($conn_id);
?>
Ayrıca Bakınız
- ftp_put() - FTP sunucusuna bir dosya yükler
- ftp_fput() - FTP sunucusuna dosya tanıtıcısı belirtilen dosyayı yükler
