Another ftp_get_contents() approach, using a temperary stream handler. Returns file contents of remote file as string.
<?php
function ftp_get_contents ($conn_id, $remote_filename) {
//Create temp handler:
$tempHandle = fopen('php://temp', 'r+');
//Get file from FTP assuming that it exists:
ftp_fget($conn_id, $tempHandle, $remote_filename, FTP_ASCII, 0));
//Getting detailed stats to check filesize:
$fstats = fstat($tempHandle);
return fread($tempHandle, $fstats['size']);
}
?>
(It is recommended to add some error handling)
fstat
(PHP 4, PHP 5)
fstat — Bir açık dosya tanıtıcısı kullanarak bir dosya hakkında bilgi döndürür
Açıklama
array fstat
( resource
$dt
)
Dosya tanıtıcısı dt olan bir dosya ile ilgili
istatistikleri döndürür. Bir dosya ismi yerine açık bir dosya tanıtıcısı
üzerinde çalışması dışında stat() işlevi gibidir.
Dönen Değerler
Dosya ile ilgili istatistikleri içeren bir dizi döndürür. Dönen dizinin biçemi hakkında bilgi edinmek için stat() işlevine bakınız.
Örnekler
Örnek 1 - fstat() örneği
<?php
// bir dosya açalım
$fp = fopen("/etc/passwd", "r");
// istatistikleri toplayalım
$fstat = fstat($fp);
// dosyayı kapatalım
fclose($fp);
// sadece ilişkisel kısmı basar
print_r(array_slice($fstat, 13));
?>
Yukarıdaki örnek şuna benzer bir çıktı üretir:
Array
(
[dev] => 771
[ino] => 488704
[mode] => 33188
[nlink] => 1
[uid] => 0
[gid] => 0
[rdev] => 0
[size] => 1114
[atime] => 1061067181
[mtime] => 1056136526
[ctime] => 1056136526
[blksize] => 4096
[blocks] => 8
)
Notlar
Bilginize: Dosyaların sunucunun dosya sistemi üzerinden erişilebilir olması gerektiğinden bu işlev uzak dosyalar üzerinde çalışmayacaktır.
broom at alturnanetworks dot com ¶
4 years ago
sheran at comtrust dot co dot ae ¶
12 years ago
On Windows NT the typical array element names for the fstat function are:
dev
ino
mode
nlink
uid
gid
size
atime
mtime
ctime
