Manuale PHP
Indietro |  | Avanti

# fpassthru

(PHP 3, PHP 4, PHP 5)

fpassthru -- Invia tutti i dati rimanenti su un puntartore a file

## Descrizione

int fpassthru ( resource handle )

Legge fino a EOF sul puntatore al file dato e scrive i risultati sul buffer di output.

Se si verifica un errore, fpassthru() restituisce `FALSE`. In caso positivo fpassthru() restituisce il numero di caratteri letti da handle scritti in output.

The file pointer must be valid, and must point to a file successfully opened by fopen() or fsockopen().

Può essere necessario chiamarerewind() per resettare il puntatore al file all'inizio del file stesso nel caso si abbbia già scritto dai dati nel file. Il file viene chiuso quando si sia chiamata fpassthru() leggendolo (lasciandohandle inutilizzato).

Se desideri semplicemente inviare il contenuto di un file sul buffer di output, senza doverlo modificare o posizionarti in un particolare offset, potresti preferire readfile(), che ti salva la chiamata a fopen().

> Nota: Quando si utilizza fpassthru() con file binari su sistemi Windows si dovrebbe essere certi di aprire il file in modalità binaria aggiungendo b alla modalità utilizzata nella chiamata a fopen().

> Si incoraggia l'uso del flag b quando si trattano file binari, anche se il sistema non lo richiede; in questo modo si rendono gli script più trasportabili.

Esempio 1. Utilizzo di fpassthru() con file binari

`<?php // apre il file in modalità binaria $name = ".\public\dev\img\ok.png"; $fp = fopen($name, 'rb'); // invia i giusti header header("Content-Type: image/png"); header("Content-Length: " . filesize($name)); // invia l'immagine ed esce dallo script fpassthru($fp); exit; ?>`

Vedere anche readfile(), fopen(), popen() e fsockopen()

Indietro | Partenza | Avanti
fopen | Risali | fputcsv