(PHP 4, PHP 5, PHP 7)
fpassthru — Bir dosya tanıtıcısında kalan verinin tamamını çıktılar
$dt
)Belirtilen dosya tanıtıcısını geçerli konumdan dosya sonuna kadar okur ve sonucu çıktı tamponuna yazar.
Veriyi dosyaya yazmayı bitirmişseniz, dosya konumlayıcıyı dosyanın başlangıcına getirmek için rewind() işlevini kullanabilirsiniz.
Dosyada değişiklik yapmadan veya dosya konumlayıcıyı belli bir konuma taşımadan sadece bir dosyanın içeriğini dökümlemekse amacınız, sizi fopen() çağrısı yapmaktan kurtaran readfile() işlevini kullanabilirsiniz.
dt
Dosya tanıtıcısı geçerli olmalı ve fopen() veya fsockopen() tarafından başarıyla açılmış bir dosya için döndürülmüş olmalıdır (ve henüz fclose() tarafından kapatılmamış olmalıdır).
Bir hata oluşursa FALSE
aksi takdirde dt
'den
okunup çıktı tamponuna aktarılan karakterlerin sayısı ile döner.
Örnek 1 - İkil dosyalarla fpassthru() kullanımı
<?php
// dosyayı ikil kipte açalım
$name = './img/ok.png';
$fp = fopen($name, 'rb');
// Doğru başlıkları gönderelim
header("Content-Type: image/png");
header("Content-Length: " . filesize($name));
// Resmi tampona atıp betiği durduralım
fpassthru($fp);
exit;
?>
Bilginize:
İkil ve metin dosyaları farklı ele alan sistemlerde (Windows gibi) dosya açılırken fopen() işlevinin kip değiştirgesine 'b' harfi dahil edilmelidir.
Sisteminiz b seçeneğinin kullanımını gerektirmiyor olsa bile, betiğinizin taşınabilirliği açısından bu seçeneğin de kullanılmasını teşvik ediyoruz.