fread
(PHP 4, PHP 5)
fread — Lecture du fichier en mode binaire
Description
fread() lit jusqu'� length octets dans le fichier r�f�renc� par handle . La lecture s'arr�te lorsqu'une des conditions suivantes appara�t :
- length octets ont �t� lus
- la fin du fichier est atteinte
- un paquet devient disponible (pour les flux r�seaux)
- 8192 octets ont �t� lus (apr�s avoir ouvert un flux utilisateurs)
Liste de param�tres
- handle
-
Un pointeur de syst�me de fichiers de type resource qui est habituellement cr�� en utilisant la fonction fopen().
- length
-
Taille length d'octets � lire.
Valeurs de retour
Retourne la cha�ne lue, ou FALSE si une erreur survient.
Exemples
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);
?>
Exemple #2 Exemple avec fread() et un fichier binaire
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().
<?php
$filename = "c:\\files\\somepic.gif";
$handle = fopen($filename, "rb");
$contents = fread($handle, filesize($filename));
fclose($handle);
?>
Exemple #3 Exemple avec fread() et un fichier distant
Lorsque vous lisez depuis n'importe quelle source qui n'est pas un fichier local, comme des flux retourn�s lors de la lecture de 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.
<?php
// Pour PHP 5 et suivant
$handle = fopen("http://www.example.com/", "rb");
$contents = stream_get_contents($handle);
fclose($handle);
?>
<?php
$handle = fopen("http://www.example.com/", "rb");
$contents = '';
while (!feof($handle)) {
$contents .= fread($handle, 8192);
}
fclose($handle);
?>
Notes
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.
Note: Noter que la fonction fread() lit la position courante du pointeur de fichier. Utilisez la fonction ftell() pour trouver la position courante du pointeur et la fonction rewind() pour r�initiliaser la position du pointeur.
Voir aussi
- fwrite() - �crit un fichier en mode binaire
- fopen() - Ouvre un fichier ou une URL
- fsockopen() - Ouvre une socket de connexion Internet ou Unix
- popen() - Cr�e un processus de pointeur de fichier
- fgets() - R�cup�re la ligne courante sur laquelle se trouve le pointeur du fichier
- fgetss() - Renvoie la ligne courante du fichier et �limine les balises HTML
- fscanf() - Analyse un fichier en fonction d'un format
- file() - Lit le fichier et renvoie le r�sultat dans un tableau
- fpassthru() - Affiche le reste du fichier
- ftell() - Renvoie la position courant du pointeur de fichier
- rewind() - Replace le pointeur de fichier au d�but