Funkcija clearstatcache

Funkcija clearstatcache počisti predpomnilnik, ki shranjuje informacije o stanju datotek. PHP predpomni rezultate funkcij za delo z datotekami, kot so filesize, filemtime in druge. Ta funkcija je uporabna, ko potrebujete najnovejše podatke o datoteki, ki so se lahko spremenili med izvajanjem skripte.

Sintaksa

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

Primer

Najenostavnejši primer uporabe funkcije brez parametrov:

php<?php
  clearstatcache();
  echo 'Predpomnilnik datotek je izpraznjen';
?>

Rezultat izvajanja kode:

php'Predpomnilnik datotek je izpraznjen'

Primer

Primer s čiščenjem predpomnilnika za določeno datoteko:

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

Rezultat izvajanja kode:

php'Predpomnilnik očiščen za datoteko: test.txt'

Primer

Praktični primer z pridobivanjem velikosti datoteke:

php<?php
  $file = 'data.txt';
  
  // Prvo pridobivanje velikosti
  $size1 = filesize($file);
  
  // Spremenimo datoteko (v realni kodi bi datoteko lahko spremenil drug proces)
  file_put_contents($file, 'nova vsebina', FILE_APPEND);
  
  // Drugo pridobivanje velikosti brez čiščenja predpomnilnika
  $size2 = filesize($file);
  
  // Počistimo predpomnilnik in dobimo dejansko velikost
  clearstatcache(true, $file);
  $size3 = filesize($file);
  
  echo "Velikost1: $size1, Velikost2: $size2, Velikost3: $size3";
?>

Rezultat izvajanja kode:

php'Velikost1: 10, Velikost2: 10, Velikost3: 20'

Glejte tudi