Я собираюсь создать в базе данных сайт с динамическим содержимым (такими как заголовок, URL и т. Д.). Полагаю, было бы очень бесполезно каждый раз запрашивать все и назначать переменные, так что я читал о кешировании.
Я использую шаблон Smarty, system.
include('libs/Smarty/Smarty.class.php');
$smarty = new Smarty;
$smarty->setCaching(true);
if (!$smarty->isCached('index.tpl')) {
//query here and assign..
$smarty->assign('title', 'Test');
}
$smarty->display('themes/simple/index.tpl');
- Код выше Когда проверяется кеш? Если я сделаю изменение в свойствах сайта моей базы данных, я хочу мгновенно изменить свой сайт, это может быть очень важной вещью, такой как перевод сайта на техническое обслуживание и т. Д.
- Действительно ли мне нужно запрашивать все данные снова и снова при каждой загрузке страницы, чтобы получить информацию о сайте, или есть какое-то решение, например, проверка структуры строк базы данных с помощью кэша или что-то в этом роде?
Решения, мне нужно!
UPDATE:
Я пробую метод clearCache, но он не работает должным образом. Я обновляю базу данных, но метод clearCache, похоже, не сработал или что-то в этом роде.
$smarty = new Smarty;
$smarty->setCaching(Smarty::CACHING_LIFETIME_CURRENT);
//just to test
$smarty->clearCache('index.tpl');
if (!$smarty->isCached('index.tpl')) {
//do stuff here