Função fpassthru() do PHP

Definição e uso

O fpassthru() escreve todos os dados restantes no ponteiro de arquivo.

Esta função lê o ponteiro de arquivo fornecido a partir da posição atual até EOF e escreve o resultado no buffer de saída.

Sintaxe

fpassthru(file)
Parâmetros Descrição
file Obrigatório. Especifica o arquivo ou recurso aberto a ser lido.

Descrição

Se ocorrer um erro, fpassthru() retorna false. Caso contrário, fpassthru() retorna de file Ler e passar para a quantidade de caracteres transmitidos para a saída.

O ponteiro de arquivo deve ser válido e deve apontar para um arquivo fopen() Ou fsockopen() abrir com sucesso (mas ainda não foi fclose() arquivos que foram abertos com fclose() (fechados).

Dicas e comentários

Dica:Se você já escreveu dados no arquivo, é necessário chamar rewind() para direcionar o ponteiro do arquivo para o início do arquivo.

Dica:Se você não deseja modificar o arquivo nem procurar em um local específico, mas apenas deseja baixar o conteúdo do arquivo para o buffer de saída, você deve usar readfile()Isso permite evitar a chamada fopen().

Comentário:Quando usar fpassthru() em arquivos binários no sistema Windows, certifique-se de que o arquivo seja aberto em modo binário adicionando b no modo fopen(). É encorajado usar o sinal b ao lidar com arquivos binários, mesmo que o sistema não precise, para melhorar a portabilidade do script.

Exemplo

Exemplo 1

<?php
$file = fopen("test.txt","r");
// Leia a primeira linha
fgets($file);
// Envie o resto do arquivo para o cache de saída
echo fpassthru($file);
fclose($file);
?>

Saída:

There are three lines in this file.
This is the last line.59

Nota:59 indica o número de caracteres passados.

Exemplo 2

Despejar a página inicial do servidor www:

<?php
$file = fopen("http://www.example.com","r");
fpassthru($file);
?>