Xwab
Форумыnavigate_nextПрограммирование на PHP

Кеширование
Сообщения
Plato

Объясните как реализовать его в скрипте.

19 Сен 2010, 7:39
iceman12

ну сохраняешь кешируемую информацию в файл и проверяешь если файлу больше чем 10минут, например, то уделяешь и создаешь новый и записываешь новую информацию.

19 Сен 2010, 7:50
Plato

iceman12, а теперь все тоже самое только на php))

19 Сен 2010, 7:54
xman12

ну вообщем так
<?
if(file_exists('tmp/cache/test.cache)){
$read=file_get_contents('tmp/cache/test.cache');
echo $read;
exit();
}

ob_start();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Кэшированная страница</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
</head>
<body>
Эта страница кэшируется средствами PHP
<a href="http://www.php.net/outcontrol">Функции управления выводом</a>
</body>
</html>

<?php

$buffer = ob_get_contents();

ob_end_flush();

if(time()>filetime('tmp/cache/test.cache')+60){
$fp = fopen('tmp/cache/test.cache', 'w');
fwrite($fp, $buffer);
fclose($fp);
}

?>

вот тебе мини пример может где то ошибку допустил так как сразу же писал сюда не тестируя думаю разберешься


__________
посл.ред. 19 Сен 2010, 9:21; всего 3 раз(а) 19 Сен 2010, 8:33
НЕЗНАЙКА

http://xwab.mobi/forum/viewtopic.php?t=7006 Поиском надо пользоваться!
xman12, file_exists

19 Сен 2010, 8:36
Plato

Всем спасибо, вроде получилось

19 Сен 2010, 9:26
Plato

хм, а если страница с динамическим содержимым, то как будет кеширование работать?

19 Сен 2010, 9:26
xman12

Plato, ЕСЛИ динамическое то толку кэшировать нету , если только отдельные какие то блоки кэшировать а что динам нет,

19 Сен 2010, 9:29
Plato

вот у меня например авторизация, я авторизируюсь на сайте, по условию у меня должен выволиться личный кабинет, однако выводится кешированная страница, как с этим быть

19 Сен 2010, 9:29
xman12

ТАК тебе надо чтобы не кэшировалось? бороться с кэшированием надо в заголовках

19 Сен 2010, 9:32
Ответить на тему