fpassthru

(PHP 4, PHP 5, PHP 7, PHP 8)

fpassthruMuestra el resto del fichero

Descripción

fpassthru(resource $stream): int

Lee todo el resto de un fichero hasta el final y dirige el resultado hacia la salida estándar.

Es necesario llamar a la función rewind() para reiniciar el puntero de fichero al principio si ya se han escrito datos en el fichero.

Si se desea únicamente copiar el contenido de un fichero en el buffer de salida, sin modificarlo previamente o colocar el puntero en un lugar particular, debe utilizarse la función readfile(), lo que evita tener que llamar a la función fopen().

Parámetros

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()).

Valores devueltos

Devuelve el número de caracteres leídos desde stream y pasados a la salida estándar.

Ejemplos

Ejemplo #1 Uso de fpassthru() con un fichero binario

<?php

// abre un fichero en modo binario
$name = './img/ok.png';
$fp = fopen($name, 'rb');

// envía los encabezados correctos
header("Content-Type: image/png");
header("Content-Length: " . filesize($name));

// envía el contenido del fichero, luego detiene el script
fpassthru($fp);
exit;

?>

Notas

Nota:

Cuando se utiliza la función fpassthru() sobre un fichero binario en Windows, asegúrese de haber abierto el fichero en modo binario añadiendo la letra b al modo de acceso utilizado en fopen().

Se recomienda utilizar la opción b al trabajar con ficheros binarios, incluso si el sistema no lo requiere, para garantizar la portabilidad de los scripts.

Ver también