Description
string
fgets ( resource handle [, int length] )
fgets() retourne la chaîne lue jusqu'Ã
la longueur length - 1 octet depuis le pointeur de fichier
handle, ou bien la fin du
fichier, ou une nouvelle ligne (qui inclut la valeur retournée), ou encore un EOF (celui
qui arrive en premier). Si aucune longueur n'est fournie, la fonction lira le flux jusqu'Ã la fin
de la ligne.
Si une erreur survient, fgets() retourne FALSE.
Erreur courante :
Les programmeurs habitués à la programmation 'C' noteront que
fgets() ne se comporte pas comme son équivalent C
lors de la rencontre de la fin du fichier.
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()).
Un exemple simple :
Exemple 1. Lecture d'un fichier ligne par ligne
<?php $handle = @fopen("/tmp/inputfile.txt", "r"); if ($handle) { while (!feof($handle)) { $buffer = fgets($handle, 4096); echo $buffer; } fclose($handle); } ?>
|
|
Note :
Le paramètre length est devenu optionnel depuis
PHP 4.2.0. Depuis PHP 4.3.0, le fait d'ommettre ce paramètre fait que
la fonction lira 1024 octets de la ligne.
Si la majorité des lignes du fichier dépassent les 8 ko,
il est plus efficace pour votre script de spécifier ce paramètre.
Note :
fgets() est compatible avec les données binaires depuis
PHP 4.3. Les versions plus anciennes ne le sont pas.
Note : Si vous avez des problèmes avec
PHP qui ne reconnaît pas certaines lignes lors de la lecture
de fichier qui ont été créé ou lus sur un MacIntosh, vous pouvez activer
l'option de configuration auto_detect_line_endings.
Voir aussi
fgetss()
fread(),
fgetc(),
stream_get_line(),
fopen(),
popen(),
fsockopen() et
stream_set_timeout().