Ce face filesize
filesize spune câți octeți ocupă un fișier. Pentru afișare către utilizatori, transformi numărul în KB sau MB.
PHP ține minte pentru scurt timp informațiile despre fișiere. Dacă alt program modifică fișierul în timp ce scriptul rulează, apelează clearstatcache() înainte de filesize, ca să primești valoarea nouă.
Parametri
| Parametru | Descriere |
|---|---|
$filename |
Calea fișierului. |
Ce returnează
Dimensiunea în octeți, sau false (cu avertisment) dacă fișierul nu există.
Exemple
Exemplul 1: Dimensiunea unui fișier text
Literele cu diacritice ocupă câte 2 octeți în UTF-8, așa că „Iași” are 5 octeți, nu 4.
<?php
file_put_contents("oras.txt", "Iași");
echo filesize("oras.txt") . " octeți";
Rezultat
5 octeți
Exemplul 2: Dimensiune ușor de citit
<?php
function dimensiune(int $octeti): string
{
$unitati = ["B", "KB", "MB", "GB"];
$i = 0;
while ($octeti >= 1024 && $i < count($unitati) - 1) {
$octeti /= 1024;
$i++;
}
return round($octeti, 1) . " " . $unitati[$i];
}
file_put_contents("mare.txt", str_repeat("a", 2500000));
echo dimensiune(filesize("mare.txt")) . "\n";
echo dimensiune(800);
Rezultat
2.4 MB
800 B
Greșeli frecvente
- Apelezi
filesizepe un fișier care nu există și primeștiWarning: filesize(): stat failed. Verifică întâi cuis_file. - Folosești
filesizepe o adresă web. Funcția nu funcționează cuhttps://.
Comenzi înrudite
filemtime: Returnează momentul ultimei modificări a unui fișier, ca timestamp.file_exists: Verifică dacă un fișier sau un director există pe disc.fread: Citește un număr dat de octeți dintr-un fișier deschis.