Funzione clearstatcache() di PHP

Definizione e uso

La funzione clearstatcache() pulisce la cache di stato del file.

La funzione clearstatcache() caches alcune informazioni di ritorno delle funzioni per fornire prestazioni migliori. Ma a volte, come nel caso di una verifica ripetuta dello stesso file in uno script, con il rischio che il file venga eliminato o modificato durante l'esecuzione dello script, è necessario pulire la cache di stato del file per ottenere risultati corretti. Per fare questo, è necessario utilizzare la funzione clearstatcache().

Funzioni che eseguono la cache, ossia le funzioni influenzate da clearstatcache()

  • stat()
  • lstat()
  • file_exists()
  • is_writable()
  • is_readable()
  • is_executable()
  • is_file()
  • is_dir()
  • is_link()
  • filectime()
  • fileatime()
  • filemtime()
  • fileinode()
  • filegroup()
  • fileowner()
  • filesize()
  • filetype()
  • fileperms()

Sintassi

clearstatcache()

Esempio

<?php
//Controlla la dimensione del file
echo filesize("test.txt");
$file = fopen("test.txt", "a+");
//Taglia il file
ftruncate($file,100);
fclose($file);
//Pulisci la cache e verifica di nuovo la dimensione del file
clearstatcache();
echo filesize("test.txt");
?>

Output:

792
100