Fonction clearstatcache() PHP

Définition et utilisation

La fonction clearstatcache() efface le cache de l'état du fichier.

La fonction clearstatcache() met en cache certaines informations de retour de fonctions pour offrir une meilleure performance. Cependant, parfois, par exemple, si vous vérifiez plusieurs fois le même fichier dans un script et que ce fichier a été supprimé ou modifié pendant l'exécution du script, vous devez effacer le cache de l'état du fichier pour obtenir des résultats corrects. Pour cela, vous devez utiliser la fonction clearstatcache().

Fonctions de cache, c'est-à-dire les fonctions affectées par 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()

Syntaxe

clearstatcache()

Exemple

<?php
//Vérifier la taille du fichier
echo filesize("test.txt");
$file = fopen("test.txt", "a+");
//Couper le fichier
ftruncate($file,100);
fclose($file);
//Effacer le cache et vérifier à nouveau la taille du fichier
clearstatcache();
echo filesize("test.txt");
?>

Sortie :

792
100