Podręcznik PHP
Poprzedni |  | Następny

# fread

(PHP 3, PHP 4, PHP 5)

fread -- Odczyt pliku binarnie bezpieczy

## Opis

string fread ( resource uchwyt, int długość )

fread() odczytuje do długość bajtów ze wskaźnika pliku określonego przez uchwyt. Czytanie kończy się gdy odczytano długość bajtów, osiągnięty został koniec pliku (EOF) lub (dla sieciowych strumieni), kiedy pakiet stanie się dostępny, cokolwiek nastąpi pierwsze.

`<?php // pobierz zawartość pliku do łańcucha $nazwa_pliku = "/usr/local/jakis.txt"; $uchwyt = fopen($nazwa_pliku, "r"); $tresc = fread($uchwyt, filesize($nazwa_pliku)); fclose($uchwyt); ?>`

Ostrzeżenie
W systemach, które rozróżniają pliki binarne i tekstowe (np. Windows) plik musi zostać otworzony z 'b' dołączonym do parametru tryb fopen().

`<?php $nazwa_pliku = "c:\\pliki\\jakisobrazek.gif"; $uchwyt = fopen($nazwa_pliku, "rb"); $tresc = fread($uchwyt, filesize($nazwa_pliku)); fclose($uchwyt); ?>`

Ostrzeżenie
Kiedy następuje odczyt z sieciowych strumieni lub potoków, takich jak te zwrócone gdy odczytujesz zdalne pliki lub z popen() i fsockopen(), odczyt zakończy się po tym jak pakiet jest dostępny. To znaczy, że powinieneś gromadzić dane razem z kawałków jak pokazano na poniższym przykładzie.

`<?php $uchwyt = fopen("http://www.przykladowy.com/", "rb"); $tresc = ''; while (!feof($uchwyt)) { $tresc .= fread($uchwyt, 8192); } fclose($uchwyt); ?>`

> Notatka: Jeśli po prostu chcesz otrzymać treść pliku w stringu, użyj file_get_contents() dlatego, że ma to dużo lepszą wydajność niż kod powyżej.

Patrz także: fwrite(), fopen(), fsockopen(), popen(), fgets(), fgetss(), fscanf(), file() i fpassthru().

Poprzedni | Spis treści | Następny
fputs | Początek rozdziału | fscanf