rewind în PHP

Mută cursorul unui fișier deschis înapoi la început.

Sintaxă
rewind($stream): bool

Ce face rewind

Fiecare citire sau scriere mută cursorul fișierului mai departe. rewind îl readuce la poziția 0, ca să poți citi din nou de la început. Este echivalent cu fseek($f, 0).

Pentru fișierele deschise cu "a" (adăugare), scrierea se face tot la final, oriunde ar fi cursorul.

Parametri

Parametru Descriere
$stream Resursa returnată de fopen.

Ce returnează

true la succes, false la eroare.

Exemple

Exemplul 1: Citirea de două ori

<?php
file_put_contents("nota.txt", "Cumpără lapte");
$f = fopen("nota.txt", "r");

echo fgets($f) . "\n";
var_dump(fgets($f));

rewind($f);
echo fgets($f);
fclose($f);

Rezultat

Cumpără lapte
bool(false)
Cumpără lapte

Greșeli frecvente

  • Scrii într-un fișier deschis cu "w+" și citești imediat, fără rewind. Cursorul este la final, deci citirea returnează text gol.

Comenzi înrudite

  • fseek: Mută cursorul unui fișier deschis la o anumită poziție, în octeți.
  • ftell: Returnează poziția curentă a cursorului dintr-un fișier deschis.
  • fopen / fclose: Deschide un fișier pentru citire sau scriere și returnează o resursă; fclose îl închide.
  • tmpfile: Creează un fișier temporar deschis pentru citire și scriere, care se șterge singur la închidere.