Изучение 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.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Август 29, 2022 г.
При обновлении модуля s3fs с ветки 7.x-2.x -> 7.x->3.x друпалу не удаётся найти указанный класс. Все необходимые шаги по апгрейду сделаны, как описано в readme.txt модуля.
Это проблема инициализации библиотеки awssdk в s3fs_libraries_info(). Drupal ...
Читать
Апрель 13, 2021 г.
Рассмотрим технику того, как выполнить node_save во время hook_node_insert.
Проблема в том, что во время данного хука мы еще находимся в транзакции и выполнить сохранение ноды прямо тут коде функции - не получится. Т.е. следующий код работать не ...
Читать
Февраль 12, 2019 г.
Я уже рассказывал ранее как программно можно обновить данные в сущности config_pages. А здесь покажу как программно можно выполнить удаление полей и групп (созданных модулем field_group).
Config Pages использует Field API, поэтому удаление полей ...
Читать
Январь 21, 2019 г.
Theme API к сожалению не даёт прямого метода, чтобы прочитать это значение. Как его получить?
Иногда программно нужно установить, что именно видит пользователь на фронт-енд (какую тему использует движок).
Необходимость возникает из-за того, ...
Читать