fread

(PHP 4, PHP 5)

freadLecture du fichier en mode binaire

Description

string fread ( resource $handle , int $length )

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($handlefilesize($filename));
fclose($handle);
?>

Exemple #2 Exemple avec fread() et un fichier binaire

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().

<?php
$filename 
"c:\\files\\somepic.gif";
$handle fopen($filename"rb");
$contents fread($handlefilesize($filename));
fclose($handle);
?>

Exemple #3 Exemple avec fread() et un fichier distant

Avertissement

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($handle8192);
}
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