Função clearstatcache
A função clearstatcache limpa o cache que armazena informações sobre o status dos arquivos. O PHP armazena em cache os resultados de funções de manipulação de arquivos, como filesize, filemtime e outras. Esta função é útil quando você precisa obter dados atualizados sobre um arquivo que pode ter sido alterado durante a execução do script.
Sintaxe
clearstatcache([bool $clear_realpath_cache = false], [string $filename = null]);
Exemplo
Exemplo mais simples de uso da função sem parâmetros:
<?php
clearstatcache();
echo 'Cache de arquivo limpo';
?>
Resultado da execução do código:
'Cache de arquivo limpo'
Exemplo
Exemplo com limpeza de cache para um arquivo específico:
<?php
$file = 'test.txt';
clearstatcache(true, $file);
echo 'Cache limpo para o arquivo: ' . $file;
?>
Resultado da execução do código:
'Cache limpo para o arquivo: test.txt'
Exemplo
Exemplo prático com obtenção do tamanho do arquivo:
<?php
$file = 'data.txt';
// Primeira obtenção do tamanho
$size1 = filesize($file);
// Alteramos o arquivo (em código real o arquivo pode ter sido alterado por outro processo)
file_put_contents($file, 'novo conteúdo', FILE_APPEND);
// Segunda obtenção do tamanho sem limpar o cache
$size2 = filesize($file);
// Limpamos o cache e obtemos o tamanho atual
clearstatcache(true, $file);
$size3 = filesize($file);
echo "Size1: $size1, Size2: $size2, Size3: $size3";
?>
Resultado da execução do código:
'Size1: 10, Size2: 10, Size3: 20'
Veja também
-
a função
file_exists,
que verifica a existência de um arquivo -
a função
filesize,
que retorna o tamanho do arquivo -
a função
filemtime,
que retorna o tempo de modificação