Funkcija clearstatcache

Funkcija clearstatcache notīra kešatmiņu, kurā glabājas informācija par failu statusu. PHP kešē failu apstrādes funkciju rezultātus, piemēram, filesize, filemtime un citas. Šī funkcija ir noderīga, kad nepieciešams iegūt aktuālus datus par failu, kas varēja mainīties skripta izpildes laikā.

Sintakse

phpclearstatcache([bool $clear_realpath_cache = false], [string $filename = null]);

Piemērs

Vienkāršākais funkcijas lietojuma piemērs bez parametriem:

php<?php
  clearstatcache();
  echo 'Faila kešatmiņa notīrīta';
?>

Koda izpildes rezultāts:

php'Faila kešatmiņa notīrīta'

Piemērs

Piemērs ar kešatmiņas notīrīšanu konkrētam failam:

php<?php
  $file = 'test.txt';
  clearstatcache(true, $file);
  echo 'Kešatmiņa notīrīta failam: ' . $file;
?>

Koda izpildes rezultāts:

php'Kešatmiņa notīrīta failam: test.txt'

Piemērs

Praktisks piemērs ar faila izmēra iegūšanu:

php<?php
  $file = 'data.txt';
  
  // Pirmā izmēra iegūšana
  $size1 = filesize($file);
  
  // Mainām failu (reālā kodā failu varēja mainīt cits process)
  file_put_contents($file, 'jauns saturs', FILE_APPEND);
  
  // Otrā izmēra iegūšana bez kešatmiņas notīrīšanas
  $size2 = filesize($file);
  
  // Notīrām kešatmiņu un iegūstam aktuālo izmēru
  clearstatcache(true, $file);
  $size3 = filesize($file);
  
  echo "Size1: $size1, Size2: $size2, Size3: $size3";
?>

Koda izpildes rezultāts:

php'Size1: 10, Size2: 10, Size3: 20'

Skatiet arī

  • funkciju file_exists,
    kas pārbauda faila eksistenci
  • funkciju filesize,
    kas atgriež faila izmēru
  • funkciju filemtime,
    kas atgriež modifikācijas laiku