fread
En esta página
fread
Lectura del archivo en modo binario
Descripción#
fread(resource $stream, int $length): string
```php
`fread` lee hasta `length` bytes en el archivo referenciado por `stream`. La lectura se detiene cuando se presenta alguna de las siguientes condiciones:
- `length` bytes han sido leídos
- se alcanza el final del archivo
- un paquete se vuelve disponible o el tiempo [ socket timeout](#function.socket-set-timeout) ha pasado (para flujos de red)
- si el flujo se lee desde el buffer, y no representa un archivo completo, entonces al menos una lectura de un número de bytes equivalente al tamaño del bloque (generalmente 8192) se realiza; siguiendo los datos del buffer anterior, el tamaño de los datos devueltos puede ser superior al tamaño del bloque.
## Parámetros
`stream`
Un puntero al sistema de ficheros de tipo `resource` que típicamente se crea utilizando `fopen`.
`length`
Tamaño `length` de bytes a leer.
## Valores devueltos
Devuelve la cadena leída, o `false` si ocurre un error.
## Ejemplos
Ejemplo con `fread`
Ejemplo con `fread` y un archivo binario
> [!WARNING]
> En los sistemas que diferencian los archivos de texto y binarios (por ejemplo, Windows) el archivo debe ser abierto con la letra 'b' añadida al parámetro de modo de la función `fopen`.
Ejemplo con `fread` y un archivo remoto
> [!WARNING]
> Cuando se lee desde cualquier fuente que no sea un archivo local, como flujos devueltos al leer [archivos remotos](#features.remote-files) o desde `popen` y `fsockopen`, la lectura se detiene después de recibir un paquete. Por lo tanto, se deben hacer bucles para recolectar los datos por paquete, como se presenta a continuación.
```php
Notas#
[!NOTE] Si se desea leer el contenido de un archivo en una cadena de caracteres, es preferible utilizar
file_get_contentsque es mucho más rápido que el código anterior.[!NOTE] Se observa que la función
freadlee la posición actual del puntero de archivo. Utilice la funciónftellpara encontrar la posición actual del puntero y la funciónrewindpara reinicializar la posición del puntero.
Véase también#
fwrite, fopen, fsockopen, popen, fgets, fgetss, fscanf, file, fpassthru, fseek, ftell, rewind, unpack