
как сделать кэширование какого либо блока? я вот тут посмотрел как сделать, но получилось, что кэшируется весь сайт. А нужно чтоб блок php один кэшировал.
Спустя 17 минут, 26 секунд (16.06.2010 - 14:42) KaFe написал(а):
хм, я бы лучше кэшировал полученую страницу, меньше гемора

Спустя 2 минуты, 9 секунд (16.06.2010 - 14:44) tmt0086 написал(а):
KaFe
как бы ты ее кэшировал? мне блок пользователя же не нужно кэшировать
как бы ты ее кэшировал? мне блок пользователя же не нужно кэшировать
Спустя 17 минут, 52 секунды (16.06.2010 - 15:02) tomash написал(а):
Зачем кэшировать блок PHP????
Спустя 1 минута, 12 секунд (16.06.2010 - 15:03) tmt0086 написал(а):
tomash
ну скажите пожалуйста тогда как сделать? если не отдельный блок
ну скажите пожалуйста тогда как сделать? если не отдельный блок

Спустя 7 минут, 15 секунд (16.06.2010 - 15:10) Guest написал(а):

вот я выделил, что кэшировать надо. у меня пока тока получилось все кэшировать(и терь пользователи видят мой профиль
Спустя 19 минут, 8 секунд (16.06.2010 - 15:29) tomash написал(а):
Если это не Ваш сайт? то придеться парсить исходник
Спустя 2 часа, 20 минут, 40 секунд (16.06.2010 - 17:50) tmt0086 написал(а):
мойtomash
Спустя 5 минут, 14 секунд (16.06.2010 - 17:55) tomash написал(а):
вот когда блок выводите вот и кэшируйте.
Спустя 2 минуты, 58 секунд (16.06.2010 - 17:58) Guest написал(а):

Спустя 2 минуты (16.06.2010 - 18:00) tomash написал(а):
Ну так вы то что выводите на экран из этих файлов складывай в кэш (в файл)!
Спустя 1 минута, 47 секунд (16.06.2010 - 18:02) tmt0086 написал(а):
tomash
можно пример, или статью какую нибудь..
можно пример, или статью какую нибудь..
Спустя 23 минуты, 23 секунды (16.06.2010 - 18:25) tomash написал(а):
Ты просто из тех блоков которые хочешь кэшировать выводи не в броузер а в файл, а скриптом которым все собираешь в кучу проверяй время кэша и если оно вышло запускай скрипт на перестройку файла. И данные ты будешь брать из файлов, а не из скриптов
Спустя 4 часа, 18 минут, 30 секунд (16.06.2010 - 22:44) KaFe написал(а):
Для вас статья http://spectator.ru/technology/php/caching
Спустя 6 часов, 28 минут, 55 секунд (17.06.2010 - 05:13) tmt0086 написал(а):
вот я сделал как здесь http://spectator.ru/technology/php/caching KaFe
и у меня закэшировал один блок
вот что вышло
и у меня закэшировал один блок

вот что вышло

Спустя 12 часов, 3 минуты, 56 секунд (17.06.2010 - 17:17) tmt0086 написал(а):

Спустя 7 минут, 48 секунд (17.06.2010 - 17:25) tomash написал(а):
tmt0086
Так вроде получилось.
Так вроде получилось.
Спустя 1 час, 43 секунды (17.06.2010 - 18:25) tmt0086 написал(а):
tomash
так получиться то получилось, но как сделать чтоб это все в шаблоне выводилось, а не чисто один блок
так получиться то получилось, но как сделать чтоб это все в шаблоне выводилось, а не чисто один блок
Спустя 50 минут, 52 секунды (17.06.2010 - 19:16) tmt0086 написал(а):
для tomash'a постараюсь объяснить, а может кто еще поможет, что я хочу...
имеется cms'ка в ней блоки в виде php файлов, эти блоки в шаблоне вызываются тегом. И у меня не получается настроить кэширование, т.к. в шаблоне (как я понял) не работает просто это http://spectator.ru/technology/php/caching.. А когда я в блоке php делаю, то у меня в первый раз загружается страница(делается кэш), а когда перезагружаю страницу, то из кэша загружается тока один блок.. а нужно чтоб этот кэш грузился вместе шаблоном
имеется cms'ка в ней блоки в виде php файлов, эти блоки в шаблоне вызываются тегом. И у меня не получается настроить кэширование, т.к. в шаблоне (как я понял) не работает просто это http://spectator.ru/technology/php/caching.. А когда я в блоке php делаю, то у меня в первый раз загружается страница(делается кэш), а когда перезагружаю страницу, то из кэша загружается тока один блок.. а нужно чтоб этот кэш грузился вместе шаблоном
Спустя 53 минуты, 10 секунд (17.06.2010 - 20:09) tmt0086 написал(а):
ну может кто что подскажет?!

Спустя 35 минут, 1 секунда (17.06.2010 - 20:44) tomash написал(а):
tmt0086
Ты положил в кэш блок, правильно? правильно! Теперь когда загружаешь шаблон то не формируй закэшированые блоки, а выводи их из файлов куда ты их спрятал!
Ты положил в кэш блок, правильно? правильно! Теперь когда загружаешь шаблон то не формируй закэшированые блоки, а выводи их из файлов куда ты их спрятал!
Спустя 15 часов, 59 минут, 59 секунд (18.06.2010 - 12:44) tmt0086 написал(а):
а может кто нибудь подсказать, можно ли содержимое кэша как бы выводить в php файл, посто в кэшировании которое посоветовали использует
include ("cache/$crc");и как понимаю, вызывает файл, а нужно чтоб содержимое кэшированого файла как бы вставлял в блок.
Спустя 7 минут, 16 секунд (18.06.2010 - 12:52) tmt0086 написал(а):
вот нашел 4 способа, но не то все..
<?php
readfile("text.txt");
?>
<?php
$OpenData = fopen("text.txt", "r");
echo fread($OpenData, filesize("text.txt"));
fclose($OpenData);
?>
<?php
$OpenData=fopen("text.txt", "r");
fpassthru($OpenData);
fclose($OpenData);
?>
<?php
echo file_get_contents("file.txt");
?>
Спустя 44 минуты, 27 секунд (18.06.2010 - 13:36) tomash написал(а):
$fp = @fopen ("здесь путь к кэшу", "w");
@fwrite ($fp, $cache);
@fclose ($fp);
в переменной кэш Ваш блок
Спустя 6 часов, 13 минут, 31 секунда (18.06.2010 - 19:50) tmt0086 написал(а):
tomash
ну гляди
вот весь код кэширующий блок
что происходит вообще(как я понимаю)
1 проверяет, есть ли кэш вообще
2 смотрит скока ему времени
3 если менше 600сек то выводит блок из кэша
4 если больше то выводит блок и кэширует его
но когда он выводит из файла, там тока один блок отображается! а нужно то чтобы этот блок вставлялся в шаблон
может есть какой нить кодик, чтоб содержимое считывалось и вставлялось вместо include ("cache/$crc");
ну гляди

вот весь код кэширующий блок
<?php
$url=$GLOBALS['REQUEST_URI'];
$crc=md5($url);
$modif=time()-@filemtime ("cache/$crc");
if ($modif<600)
{
include ("cache/$crc");
exit();
}
ob_start ();
<тут содержимое блока>
$cache = ob_get_contents();
ob_end_clean ();
echo $cache;
$fp = @fopen ("cache/$crc", "w");
@fwrite ($fp, $cache);
@fclose ($fp);
?>
что происходит вообще(как я понимаю)
1 проверяет, есть ли кэш вообще
2 смотрит скока ему времени
3 если менше 600сек то выводит блок из кэша
4 если больше то выводит блок и кэширует его
но когда он выводит из файла, там тока один блок отображается! а нужно то чтобы этот блок вставлялся в шаблон


Спустя 1 час, 20 минут, 33 секунды (18.06.2010 - 21:10) tomash написал(а):
Вот это тебе надо вставить в твой шаблон или скрипт который собирает шаблон
$url=$GLOBALS['REQUEST_URI'];
$crc=md5($url);
$modif=time()-@filemtime ("cache/$crc");
if ($modif<600)
{
include ("cache/$crc");
}
else
{
здесь мы вызываем скрипт, который формирует блок и кэширует его
}