Función PHP clearstatcache()

Definición y uso

La función clearstatcache() limpia la caché del estado del archivo.

La función clearstatcache() cachea ciertas funciones de retorno de información para proporcionar un mejor rendimiento. Sin embargo, a veces, por ejemplo, cuando se verifica el mismo archivo varias veces en un script y hay un riesgo de que el archivo se elimine o modifique durante la ejecución del script, necesitas limpiar la caché del estado del archivo para obtener resultados correctos. Para hacer esto, necesitas usar la función clearstatcache().

Funciones que hacen caching, es decir, las funciones afectadas por 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()

Sintaxis

clearstatcache()

Ejemplo

<?php
// Verificar el tamaño del archivo
echo filesize("test.txt");
$file = fopen("test.txt", "a+");
// Cortar el archivo
ftruncate($file,100);
fclose($file);
//Limpiar la caché y verificar el tamaño del archivo nuevamente
clearstatcache();
echo filesize("test.txt");
?>

Salida:

792
100