(PHP 4, PHP 5, PHP 7, PHP 8)
fgets — Recupera la línea actual a partir de la posición del puntero de archivo
Recupera la línea actual a partir de la posición del puntero de archivo.
stream
El fichero al que se apunta debe ser válido, y debe apuntar a un fichero abierto por fopen() o fsockopen() (y que todavía no esté cerrado por fclose()).
length
Lee hasta la longitud length
- 1 byte
desde el puntero de archivo stream
,
o bien el final del archivo, o una nueva línea (que es incluida
en el valor devuelto), o un EOF (el que llegue primero). Si no se
proporciona longitud, la función leerá el flujo hasta el final de la línea.
Devuelve un string que contiene los length
primeros
caracteres, menos 1 byte desde el puntero de archivo
stream
. false
es devuelto si no hay más
datos para leer.
Si ocurre un error, la función devuelve false
.
Ejemplo #1 Lectura de un archivo línea por línea
<?php
$fp = @fopen("/tmp/inputfile.txt", "r");
if ($fp) {
while (($buffer = fgets($fp, 4096)) !== false) {
echo $buffer, PHP_EOL;
}
if (!feof($fp)) {
echo "Error: fgets() falló\n";
}
fclose($fp);
}
?>
Nota: Si sufre problemas con PHP no reconociendo los finales de línea cuando lee o crea ficheros en Macintosh, puede probar de activar la opción de configuración en tiempo de ejecución auto_detect_line_endings para intentar resolver el problema.
Nota:
Los programadores acostumbrados a la programación 'C' notarán que fgets() no se comporta como su equivalente en C al encontrar el final del archivo.