Funktionen clearstatcache

Funktionen clearstatcache rydder den cache, der gemmer information om filers status. PHP cacher resultaterne af filhåndteringsfunktioner såsom filesize, filemtime og andre. Denne funktion er nyttig, når du har brug for at få aktuelle data om en fil, som muligvis er ændret under udførelsen af scriptet.

Syntaks

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

Eksempel

Simpelt eksempel på brug af funktionen uden parametre:

php<?php
  clearstatcache();
  echo 'File cache cleared';
?>

Resultat af kodeudførelse:

php'File cache cleared'

Eksempel

Eksempel med rydning af cache for en specifik fil:

php<?php
  $file = 'test.txt';
  clearstatcache(true, $file);
  echo 'Cache cleared for file: ' . $file;
?>

Resultat af kodeudførelse:

php'Cache cleared for file: test.txt'

Eksempel

Praktisk eksempel med hentning af filstørrelse:

php<?php
  $file = 'data.txt';
  
  // Første hentning af størrelse
  $size1 = filesize($file);
  
  // Ændrer filen (i rigtig kode kunne filen være ændret af en anden proces)
  file_put_contents($file, 'new content', FILE_APPEND);
  
  // Anden hentning af størrelse uden at rydde cachen
  $size2 = filesize($file);
  
  // Ryd cachen og hent den aktuelle størrelse
  clearstatcache(true, $file);
  $size3 = filesize($file);
  
  echo "Size1: $size1, Size2: $size2, Size3: $size3";
?>

Resultat af kodeudførelse:

php'Size1: 10, Size2: 10, Size3: 20'

Se også

  • funktionen file_exists,
    som kontrollerer eksistensen af en fil
  • funktionen filesize,
    som returnerer filens størrelse
  • funktionen filemtime,
    som returnerer ændringstidspunktet