Rechercher une fonction PHP

fread

(PHP 4, PHP 5, PHP 7)

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 ou le temps socket timeout est passé (pour les flux réseau)
  • si le flux est lu depuis le buffer, et qu'il ne représente pas un fichier plein, alors au moins une lecture d'un nombre d'octets équivalent à la taille du bloc (habituellement 8192) est réalisée ; suivants les données du buffer précédent, la taille des données retournées peut être supérieure à la taille du bloc.

  

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");
if (
FALSE === $handle) {
    exit(
"Echec lors de l'ouverture du flux vers l'URL");
}

$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 un 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 courante du pointeur de fichier
  • rewind() - Replace le pointeur de fichier au début
  • unpack() - Déconditionne des données depuis une chaîne binaire

Rechercher une fonction PHP

Document créé le 30/01/2003, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/php-rf-function.fread.html

L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.

Références

  1. Consulter le document html Langue du document :fr Manuel PHP : http://php.net

Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.

Table des matières Haut