Funkcia clearstatcache
Funkcia clearstatcache vyčistí vyrovnávaciu pamäť, ktorá ukladá informácie o stave súborov. PHP ukladá do vyrovnávacej pamäte výsledky funkcií pre prácu so súbormi, ako sú filesize, filemtime a ďalšie. Táto funkcia je užitočná, keď potrebujete získať aktuálne údaje o súbore, ktorý sa mohol zmeniť počas vykonávania skriptu.
Syntax
clearstatcache([bool $clear_realpath_cache = false], [string $filename = null]);
Príklad
Najjednoduchší príklad použitia funkcie bez parametrov:
<?php
clearstatcache();
echo 'File cache cleared';
?>
Výsledok vykonania kódu:
'File cache cleared'
Príklad
Príklad s vyčistením vyrovnávacej pamäte pre konkrétny súbor:
<?php
$file = 'test.txt';
clearstatcache(true, $file);
echo 'Cache cleared for file: ' . $file;
?>
Výsledok vykonania kódu:
'Cache cleared for file: test.txt'
Príklad
Praktický príklad so získavaním veľkosti súboru:
<?php
$file = 'data.txt';
// Prvé získanie veľkosti
$size1 = filesize($file);
// Zmeníme súbor (v reálnom kóde súbor mohol byť zmenený iným procesom)
file_put_contents($file, 'new content', FILE_APPEND);
// Druhé získanie veľkosti bez vyčistenia vyrovnávacej pamäte
$size2 = filesize($file);
// Vyčistíme vyrovnávaciu pamäť a získame aktuálnu veľkosť
clearstatcache(true, $file);
$size3 = filesize($file);
echo "Size1: $size1, Size2: $size2, Size3: $size3";
?>
Výsledok vykonania kódu:
'Size1: 10, Size2: 10, Size3: 20'
Pozrite tiež
-
funkciu
file_exists,
ktorá kontroluje existenciu súboru -
funkciu
filesize,
ktorá vráti veľkosť súboru -
funkciu
filemtime,
ktorá vráti čas zmeny