Функция clearstatcache
La función clearstatcache limpia el caché que almacena información sobre el estado de los archivos. PHP almacena en caché los resultados de funciones de trabajo con archivos, como filesize, filemtime y otras. Esta función es útil cuando necesitas obtener datos actualizados sobre un archivo que pudo haber cambiado durante la ejecución del script.
Sintaxis
clearstatcache([bool $clear_realpath_cache = false], [string $filename = null]);
Ejemplo
Ejemplo más simple de uso de la función sin parámetros:
<?php
clearstatcache();
echo 'File cache cleared';
?>
Resultado de la ejecución del código:
'File cache cleared'
Ejemplo
Ejemplo con limpieza de caché para un archivo específico:
<?php
$file = 'test.txt';
clearstatcache(true, $file);
echo 'Cache cleared for file: ' . $file;
?>
Resultado de la ejecución del código:
'Cache cleared for file: test.txt'
Ejemplo
Ejemplo práctico con obtención del tamaño de archivo:
<?php
$file = 'data.txt';
// Primera obtención del tamaño
$size1 = filesize($file);
// Modificamos el archivo (en código real el archivo pudo ser modificado por otro proceso)
file_put_contents($file, 'new content', FILE_APPEND);
// Segunda obtención del tamaño sin limpiar el caché
$size2 = filesize($file);
// Limpiamos el caché y obtenemos el tamaño actual
clearstatcache(true, $file);
$size3 = filesize($file);
echo "Size1: $size1, Size2: $size2, Size3: $size3";
?>
Resultado de la ejecución del código:
'Size1: 10, Size2: 10, Size3: 20'
Véase también
-
la función
file_exists,
que verifica la existencia de un archivo -
la función
filesize,
que devuelve el tamaño del archivo -
la función
filemtime,
que devuelve el tiempo de modificación