Смотря для чего тебе необходимо сделать кэш. Понимаешь, можно сделать его и для телефона, и для интернет страницы и даже на флешку! Я расскажу случай с интернет страницой. Не буду долго объяснять, что такое кэш и кэширование. Думаю, что если вы задаете такой вопрос, то вы понимаете его значение. Скажу только, что кэш очень помогает сэкономить время на отображение страницы. Ведь без кэша при опубликовании нового документа при его запросе весь сайт заново генерится и считывается информация с базы данных, что занимает больше времени. А так можно сохранить результат в кэш и просто запрашивать готовую информацию. Сделать его для сайта очень просто:
Это необходимо вставить в начало страницы:
$url=$GLOBALS['REQUEST_URI'];
$crc=md5($url);
$modif=time()-@filemtime("cache/$crc");
if ($modif<600)
{
include ("cache/$crc");
exit();
}
ob_start ();
Но надо будет обязательно вычислить из адреса страницы md5, который используется как идентификатор страницы. В директории cache будут лежать файлы кэша. Но вы просмотрите, сколько секунд времени файлу с кэшэм, потому что если меньше 600 или он вообще есть, надо его вывести (include) Это вставим в конец страницы:
$cache = ob_get_contents();
ob_end_clean ();
echo $cache;
$fp =@fopen("cache/$crc", "w");
@fwrite($fp, $cache);
@fclose($fp);
Надо считать содержимое буфера (ob_get_contents). Вы получите в переменной cache то, что будет выводится в браузер. Функция echo и выводит в браузер.
Запишите содержимое буфера в директорию cache в файл crc и ГОТОВО.
Таким образом, время на выведение страницы из кэша насчитывает 0.001-0.004 секунды. Вы получите очень крутой выигрыш процессорного времени.
Добавить комментарий