Czytanie dużych plików (chunked reading)
Założenie: Nauczymy się, jak czytać duże pliki w PHP po kawałku (chunkach), aby uniknąć przekroczenia limitu pamięci.
Krok po kroku:
- Otwarcie pliku: Używamy funkcji
fopen()
do otwarcia pliku w trybie odczytu (“r”). - Czytanie pliku w chunkach: Funkcja
fread()
pozwala odczytać określony fragment pliku. Ustalamy rozmiar chunka (np. 1KB). - Pętla odczytu: W pętli
while
odczytujemy kolejne chunk’i, dopóki nie osiągniemy końca pliku (feof()
). - Zamknięcie pliku: Po zakończeniu odczytu zamykamy plik za pomocą
fclose()
.
$plik = fopen('duzy_plik.txt', 'r');
if ($plik === false) {
die("Błąd otwarcia pliku!");
}
$chunk_size = 1024; // 1KB
while (!feof($plik)) {
$chunk = fread($plik, $chunk_size);
// Przetwarzanie chunka (np. wyświetlanie, zapisywanie do bazy danych)
echo $chunk;
}
fclose($plik);
Pamiętaj, aby zastąpić ‘duzy_plik.txt’ nazwą swojego pliku. Ten przykład pokazuje podstawy czytania dużych plików w PHP. Zachęcamy do eksperymentowania z różnymi rozmiarami chunków i metodami przetwarzania danych.