Funkcija clearstatcache

Funkcija clearstatcache čisti keš koji čuva informacije o statusu datoteka. PHP kešira rezultate funkcija za rad sa datotekama, kao što su filesize, filemtime i drugih. Ova funkcija je korisna kada su vam potrebni ažurni podaci o datoteci koja se možda promenila tokom izvršavanja skripte.

Sintaksa

phpclearstatcache([bool $clear_realpath_cache = false], [string $filename = null]);

Primer

Najjednostavniji primer korišćenja funkcije bez parametara:

php<?php
  clearstatcache();
  echo 'Keš datoteka je očišćen';
?>

Rezultat izvršavanja koda:

php'Keš datoteka je očišćen'

Primer

Primer sa čišćenjem keša za određenu datoteku:

php<?php
  $file = 'test.txt';
  clearstatcache(true, $file);
  echo 'Keš je očišćen za datoteku: ' . $file;
?>

Rezultat izvršavanja koda:

php'Keš je očišćen za datoteku: test.txt'

Primer

Praktični primer sa dobijanjem veličine datoteke:

php<?php
  $file = 'data.txt';
  
  // Prvo dobijanje veličine
  $size1 = filesize($file);
  
  // Menjamo datoteku (u stvarnom kodu datoteku je možda izmenio drugi proces)
  file_put_contents($file, 'novi sadržaj', FILE_APPEND);
  
  // Drugo dobijanje veličine bez čišćenja keša
  $size2 = filesize($file);
  
  // Čistimo keš i dobijamo ažurnu veličinu
  clearstatcache(true, $file);
  $size3 = filesize($file);
  
  echo "Veličina1: $size1, Veličina2: $size2, Veličina3: $size3";
?>

Rezultat izvršavanja koda:

php'Veličina1: 10, Veličina2: 10, Veličina3: 20'

Pogledajte takođe

  • funkciju file_exists,
    koja proverava postojanje datoteke
  • funkciju filesize,
    koja vraća veličinu datoteke
  • funkciju filemtime,
    koja vraća vreme izmene