fread (PHP 3, PHP 4, PHP 5) fread -- Lecture du fichier en mode binaire Descriptionstring fread ( resource handle, int length )
fread() lit jusqu'à length
octets dans le fichier référencé par handle.
La lecture s'arrête lorsque length octets
ont été lus, ou que l'on a atteint la fin du fichier, ou
qu'une erreur survient (le premier des trois).
Exemple 1. Exemple avec fread()
<?php // Lit un fichier, et le place dans une chaîne $filename = "/usr/local/something.txt"; $handle = fopen ($filename, "r"); $contents = fread ($handle, filesize ($filename)); fclose ($handle); ?>
|
|
| Avertissement |
Sur les systèmes qui différencient les fichiers
textes et binaires (i.e. Windows) le fichier doit être
ouvert avec la lettre 'b' ajoutée au paramètre
de mode de la fonction fopen().
|
Exemple 2. Utilisation des fichiers binaires avec fread()
<?php $filename = "c:\fichiers\uneimage.gif"; $handle = fopen ($filename, "rb"); $contents = fread ($handle, filesize ($filename)); fclose ($handle); ?>
|
|
| Avertissement |
Lorsque vous lisez depuis un flux réseau, ou un pipe,
tel que ceux utilisés pour les accès aux
fichiers distants ou depuis
popen() et fsockopen(), la lecture
s'arrête après la réception d'un paquet. Il faut donc faire des
boucles pour collecter les données par paquet, comme présenté
ci-dessous.
|
Exemple 3. Utilisation des flux distants fread()
<?php $handle = fopen("http://www.example.com/", "rb"); $contents = ''; while (!feof($handle)) { $contents .= fread($handle, 8192); } fclose($handle); ?>
|
|
Note :
Si vous voulez lire le contenu d'un fichier dans une chaîne de
caractères, utilisez plutôt file_get_contents()
qui est bien plus rapide que le code ci-dessus.
Voir aussi
fwrite(),
fopen(),
fsockopen(),
popen(),
fgets(),
fgetss(),
file() et
fpassthru().
|