Изучение API удобно начинать с шаблонов кода, которые демонстрируют технику использования.
Пример логики использования/создания элемента кеша
|
|
$cache_id = 'my_cache_element_name_cid'; if (($cache = cache_get($cache_id)) && REQUEST_TIME < $cache->expire) { // используем значение из кеша $data = $cache->data; } else { // формируем новое значение и данные для кеша ... $data = ....; cache_set($cache_id, $data, 'cache', REQUEST_TIME + 3600 * 12); // в примере время жизни данных - 12 часов } |
Обратите внимание на дополнительные скобки вокруг $cache = cache_get($cache_id). В многочисленных примерах и копиях примеров в интернет, их обычно нет, что обычно приводит к постоянному вычислению переменной $data, т.е. кеш никогда не используется.
Drupal 7
Данная запись опубликована в 14.05.2019 15:50 и размещена в рубрике Drupal.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Январь 17, 2019 г.
В определенный момент стандартные схемы данных Drupal вас могут перестать удовлетворять, и вы решите добавить свои таблицы в базу данных сайта. Как это ...
Читать
Апрель 13, 2021 г.
Рассмотрим технику того, как выполнить node_save во время hook_node_insert.
Проблема в том, что во время данного хука мы еще находимся в транзакции и выполнить сохранение ноды прямо тут коде функции - не получится. Т.е. следующий код работать не ...
Читать
Март 22, 2021 г.
Проявляется как не прогружающиеся wysiwyg редактор (ckeditor, например) или элементы поля, обрабатываемые модулем media, при добавлении параграфа (entity модуля parapraphs). Это по-крайней мере два примера с которыми я лично сам сталкивался.
Характерно, ...
Читать
Май 22, 2021 г.
Подгрузка данных с сервера (например, при изменении параметров фильтра) происходит с небольшой задержкой, потому пользователь может не понять, среагировал как то сайт или нет на его действия.
Задача состоит в том, чтобы показать, что идет загрузка ...
Читать