Funkce clearstatcache
Funkce clearstatcache vymazává mezipaměť, která uchovává informace o stavu souborů. PHP ukládá do mezipaměti výsledky funkcí pro práci se soubory, jako jsou filesize, filemtime a další. Tato funkce je užitečná, když potřebujete získat aktuální data o souboru, který se mohl změnit během provádění skriptu.
Syntaxe
clearstatcache([bool $clear_realpath_cache = false], [string $filename = null]);
Příklad
Nejjednodušší příklad použití funkce bez parametrů:
<?php
clearstatcache();
echo 'File cache cleared';
?>
Výsledek provedení kódu:
'File cache cleared'
Příklad
Příklad s vymazáním mezipaměti pro konkrétní soubor:
<?php
$file = 'test.txt';
clearstatcache(true, $file);
echo 'Cache cleared for file: ' . $file;
?>
Výsledek provedení kódu:
'Cache cleared for file: test.txt'
Příklad
Praktický příklad se získáním velikosti souboru:
<?php
$file = 'data.txt';
// První získání velikosti
$size1 = filesize($file);
// Změníme soubor (v reálném kódu mohl být soubor změněn jiným procesem)
file_put_contents($file, 'new content', FILE_APPEND);
// Druhé získání velikosti bez vymazání mezipaměti
$size2 = filesize($file);
// Vymazání mezipaměti a získání aktuální velikosti
clearstatcache(true, $file);
$size3 = filesize($file);
echo "Size1: $size1, Size2: $size2, Size3: $size3";
?>
Výsledek provedení kódu:
'Size1: 10, Size2: 10, Size3: 20'
Viz také
-
funkci
file_exists,
která kontroluje existenci souboru -
funkci
filesize,
která vrací velikost souboru -
funkci
filemtime,
která vrací čas změny