is_cached()mengembalikan true jika ada cache yang benar untuk template iniDeskripsiboolis_cachedstringtemplatestringcache_idstringcompile_id
Ini hanya bekerja jika
$caching disetel ke &true;, lihat
seksi caching untuk info lebih jauh.
Anda juga dapat mengirimkan $cache_id sebagai parameter
opsional kedua seandainya anda menginginkan
multipel cache
untuk template yang diberikan.
Anda dapat menyertakan
$compile id
sebagai parameter opsional ketiga. Jika anda mengabaikan parameter itu
persisten
$compile_id dipakai bila disetel.
Jika anda tidak ingin mengirimkan $cache_id tapi ingin
mengirimkan
$compile_id anda harus mengirimkan
&null; sebagai $cache_id.
Catatan Teknis
Jika is_cached() menghasilkan &true; ia sebenarnya
mengambil output yang di-cache dan menyimpannya secara internal.
Setiap panggilan berikutnya ke
display() atau
fetch()
akan mengembalikan ouput ini yang secara internal disimpan dan tidak
mencoba mengambil ulang file cache. Ini menghindari kondisi lomba yang
mungkin terjadi saat proses kedua membersihkan cache diantara panggilan
ke is_cached() dan ke
display()
dalam contoh di atas. Ini juga berarti panggilan ke
clear_cache()
dan perubahan lain dari setelan-cache mungkin tidak berpengaruh setelah
is_cached() mengembalikan &true;.
is_cached()
caching = true;
if(!$smarty->is_cached('index.tpl')) {
// lakukan panggilan database, tempatkan vars di sini
}
$smarty->display('index.tpl');
?>
]]>
is_cached() with multiple-cache template
caching = true;
if(!$smarty->is_cached('index.tpl', 'FrontPage')) {
// lakukan panggilan database, tempatkan vars di sini
}
$smarty->display('index.tpl', 'FrontPage');
?>
]]>
Lihat juga
clear_cache(),
clear_all_cache(),
and
seksi caching.