c # outputcache эквивалент в php? - PullRequest
2 голосов
/ 08 июля 2011

Я пытаюсь выяснить, как кэшировать 'чат' для сайта, который использует php, и переданные переменные должны иметь уникальные версии для каждой переменной.то есть: кэш чата для идентификатора 1 не должен совпадать с идентификатором id2, поскольку id1 не нужно видеть личные сообщения id2s.

В C # вы можете использовать что-то похожее на:

<%@ OutputCache Duration="4" VaryByParam="param1;param3" %>

Это кэширует страницу в течение 4 секунд и будет кешировать уникальные копии, если param1 и param3 отличаются между кэшированными страницами.

Есть ли такая вещь в php?

1 Ответ

1 голос
/ 13 июля 2011

PHP не имеет встроенного кэширования вывода;вам придется либо написать свою собственную реализацию (что не так уж сложно для чего-то, о чем вы говорите), либо использовать существующую реализацию.Я полагаю, что в шаблонизатор Smarty встроено нечто подобное, но вам может быть слишком поздно реализовать что-то подобное без особых проблем.

Если вы собираетесь писать собственную реализацию, япосмотрел в memcached для кеширования ваших данных;тогда вы можете просто создать такие ключи для своего кэшированного HTML:

$ cachekey = "chat_param1:".$ param1.'-парам3:'.$ param3);

Таким образом, у вас есть уникальный ключ для каждого возможного значения param1 и param3.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...