clearstatcache
(PHP 4, PHP 5, PHP 7, PHP 8)
clearstatcache — Dosya durum önbelleğini temizler
Açıklama
PHP'nin mevcut olmayan dosyalar hakkında önbellekte bilgi saklamadığına
dikkat ediniz. Bu bakımdan, varolmayan bir dosya üzerinde
file_exists() işlevini çağırırsanız, siz dosyayı
oluşturana kadar işlev false
döndürecektir. Siz dosyayı oluşturduktan
sonra dosyayı silseniz bile işlev true
döndürecektir. Bunun yanında,
unlink() işlevi önbelleği otomatik olarak
temizleyecektir.
Bilginize:
Bu işlev belli dosya isimleri hakkında bilgiyi önbelleğe alır; dolayısıyla
aynı dosya üzerinde çok sayıda işlem yapıyorsanız ve bu dosya hakkındaki
bilgilerin önbellekte saklanmaması gerekiyorsa tek ihtiyacınız
clearstatcache() çağrısı yapmak olacaktır.
Önbelleklemeden etkilenen işlevler:
stat(),
lstat(),
file_exists(),
is_writable(),
is_readable(),
is_executable(),
is_file(),
is_dir(),
is_link(),
filectime(),
fileatime(),
filemtime(),
fileinode(),
filegroup(),
fileowner(),
filesize(),
filetype() ve
fileperms().
Bağımsız Değişkenler
gerçek_yol_belleğini_temizle
-
Gerçek yol öbbelleğinin de ayrıca temizleneceği bilgisi.
dosyaismi
-
Gerçek yol önbelleği sadece belirtilen dosya için ve sadece
gerçek_yol_belleğini_temizle
bağımsız değişkenine
true
atandığı takdirde temizlenir.
Dönen Değerler
Hiçbir değer dönmez.
Örnekler
Örnek 1 - clearstatcache() örneği
<?php
$file = 'output_log.txt';
function get_owner($file)
{
$stat = stat($file);
$user = posix_getpwuid($stat['uid']);
return $user['name'];
}
$format = "UID @ %s: %s\n";
printf($format, date('r'), get_owner($file));
chown($file, 'ross');
printf($format, date('r'), get_owner($file));
clearstatcache();
printf($format, date('r'), get_owner($file));
?>
Yukarıdaki örnek şuna benzer bir çıktı üretir:
UID @ Sun, 12 Oct 2008 20:48:28 +0100: root
UID @ Sun, 12 Oct 2008 20:48:28 +0100: root
UID @ Sun, 12 Oct 2008 20:48:28 +0100: ross