Description
int
fpassthru ( resource handle )
fpassthru() lit tout le reste d'un fichier
jusqu'Ã la fin et dirige le résultat vers la sortie standard.
Si une erreur survient, fpassthru() retourne FALSE.
Sinon, fpassthru() retourne le nombre de caractères
lus dans handle et passés à la sortie standard.
Le pointeur de fichier doit être valide et pointer
sur un fichier ouvert avec succès par fopen() ou
fsockopen() (et pas encore fermé par fclose()).
Vous devez appeler la fonction rewind() pour réinitialiser
le pointeur de fichier au début si vous avez déjà écrit des données dans le
fichier.
Si vous voulez uniquement copier le contenu d'un fichier dans le buffer
de sortie, sans le modifier auparavant ou placer le pointeur à un endroit
particulier, vous devriez utiliser la fonction readfile(), ce
qui vous évite d'appeler la fonction fopen() call.
Note :
Lorsque vous utilisez la fonction fpassthru() sur un fichier
binaire sous Windows, assurez-vous d'avoir ouvert le fichier
en mode binaire en ajoutant la lettre b au mode
d'accès utilisé dans fopen().
Vous êtes encouragé Ã utiliser l'option b lorsque vous
traitez des fichiers binaires, même si votre système ne le requiert pas,
de façon à rendre vos scripts portables.
Exemple 1. Utiliser fpassthru() avec un fichier binaire
<?php
// ouvre un fichier en mode binaire $name = './img/ok.png'; $fp = fopen($name, 'rb');
// envoie les bons en-têtes header("Content-Type: image/png"); header("Content-Length: " . filesize($name));
// envoie le contenu du fichier, puis stoppe le script fpassthru($fp); exit;
?>
|
|
Voir aussi
readfile(),
fopen(),
popen() et
fsockopen().