Descrizione
string
fgets ( resource handle, int length )
Restituisce una stringa di length - 1 byte letti dal file puntato da handle.
La lettura termina quando sono stati letti length - 1 byte, oppure si incontra il carattere
di newline (che viene incluso nel valore restituito), oppure alla fine del file
(EOF) qualora giunga prima. Se non si specifica length, si assume
come default 1k, o 1024 byte.
Se si verifica un errore, la funzione restituisce FALSE.
Errori comuni:
Le persone abituate alla semantica 'C' di fgets notino la differenza
nel trattamento dell'EOF.
The file pointer must be valid, and must point to
a file successfully opened by fopen() or
fsockopen().
Segue un semplice esempio:
Esempio 1. Legge un file riga per riga
<?php $handle = fopen("/tmp/inputfile.txt", "r"); while (!feof($handle)) { $buffer = fgets($fd, 4096); echo $buffer; } fclose($handle); ?>
|
|
Nota:
Il parametro length è diventato opzionale a partire da PHP
4.2.0, se omesso, si assume come lunghezza della linea 1024.
A partire dalla versione 4.3, l'omissione del parametro length
comporta la lettura del flusso d'ingresso sino al raggiungimento della fine della linea.
Se la maggior parte delle righe lette dal file hanno dimensione superiore a 8KB,
è più efficiente specificare la lunghezza massima
della linea.
Nota:
A partire da PHP 4.3 questa funzione è 'binary safe'. Le versioni
precedenti non lo sono.
Nota: Se il PHP ha
dei problemi a riconoscere la fine riga nella lettura di file su
o creati da computer Macintosh, si può abilitare il parametro
di configurazione auto_detect_line_endings.
Vedere anche fread(),
fgetc(),
stream_get_line(),
fopen(),
popen(),
fsockopen() e
stream_set_timeout().