Функција clearstatcache

Функција clearstatcache чисти кеш који чува информације о стању фајлова. PHP кешира резултате функција за рад са фајловима, као што су filesize, filemtime и друге. Ова функција је корисна када треба да добијете актуелне податке о фајлу који се могао променити током извршавања скрипта.

Синтакса

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

Пример

Најједноставнији пример употребе функције без параметара:

php<?php
  clearstatcache();
  echo 'Кеш фајлова је очишћен';
?>

Резултат извршавања кода:

php'Кеш фајлова је очишћен'

Пример

Пример са чишћењем кеша за одређени фајл:

php<?php
  $file = 'test.txt';
  clearstatcache(true, $file);
  echo 'Кеш је очишћен за фајл: ' . $file;
?>

Резултат извршавања кода:

php'Кеш је очишћен за фајл: test.txt'

Пример

Практични пример са добијањем величине фајла:

php<?php
  $file = 'data.txt';
  
  // Прво добијање величине
  $size1 = filesize($file);
  
  // Мењамо фајл (у реалном коду фајл је могао бити измењен другим процесом)
  file_put_contents($file, 'new content', FILE_APPEND);
  
  // Друго добијање величине без чишћења кеша
  $size2 = filesize($file);
  
  // Чистимо кеш и добијамо актуелну величину
  clearstatcache(true, $file);
  $size3 = filesize($file);
  
  echo "Size1: $size1, Size2: $size2, Size3: $size3";
?>

Резултат извршавања кода:

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

Погледајте такође

  • функцију file_exists,
    која проверава постојање фајла
  • функцију filesize,
    која враћа величину фајла
  • функцију filemtime,
    која враћа време измене