Как работать с кэшем

Раздел форума: 

Добрый день создаю модуль и возникли проблемы с кэшем(с ним сталкиваюсь впервые).имееться $xml я его распарсил и все необходимое закинул в переменную $res.(или проще закинуть все в блок и кэшировать уже блок?)

Сейчас требуется закинуть его в кэш (обновлять это раз в 6 часов) и вытаскивать это при обращении.

Знаю что требуется искать в 

cache_get
cache_set
hook_cron

Но чего то не догоняю как закинуть.

Как я понял данный код закиывает в кэш, но куда столько переменных... куда вставить мою переменную?

cache_set($cid, $data, $bin = 'cache', $expire ='CACHE_PERMANENT')

Вытащить из кэша 

cache_get ($ CID, $ bin = "cache")

а для обновления как использовать hook_cron не представляю.

Подскажите мне насчет моей проблемы. Заранее спасибо.

Добавить комментарий

Войти, используя Loginza Google Account Yandex Mail.ru Vkontakte Facebook

Plain text

  • HTML-теги не обрабатываются и показываются как обычный текст
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Строки и параграфы переносятся автоматически.
Прикрепить
Максимальный размер файла: 128 МБ.
Разрешённые типы файлов: txt doc docx rar zip xls xlsx pdf odf odt jpg jpeg gif png psd rtf.

Я возможно ошибаюсь, но

Я возможно ошибаюсь, но друпал кеширует все блоки по умолчанию, если не указано, что его кешировать не нужно в настройках блока. Посмотрите вот этот модуль block cache alter, возможно он вам поможет:

http://drupal.org/project/blockcache_alter

Насчет того, что можно и без модуля обойтись (это в описание к модулю написано):

...
$cache = cache_get('pref_pref_leader', 'cache_block');
// Return cache if possible.
if (!empty($cache) && isset($cache->data) && !empty($cache->data)) {
  return $cache->data;
}

// no cache, generate the output.
...
$content = ...;
$block = array(
  'subject' => 'Семерка лучших',
  'content' => $content,
);
// Cache for 30 mins.
cache_set('pref_pref_leader', $block 'cache_block', time() + 1800);
return $block;
...

Источник: http://drupal.stackexchange.com/questions/6090/drupal-7-block-caching