⚡️ Кэширование данных в Bitrix D7: ускоряем выдачу Работаешь с массивами из Highload‑блоков или собираешь сложные выборки через ORM и замечаешь, что страница тянется слишком долго? Документация про Bitrix\Main\Data\Cache есть, но копировать примеры из старых проектов — не всегда удобно. Используй этот готовый сниппет: оборачивай «тяжёлые» запросы в простой кэш на указанное время и забудь о лишних запросах к БД. <?php use Bitrix\Main\Data\Cache; $cacheTime = 3600; // время жизни в секундах $cacheId = 'my_custom_cache'; // уникальный идентификатор $cacheDir = '/my/snippets/'; // папка в /bitrix/cache $cache = Cache::createInstance(); if ($cache->initCache($cacheTime, $cacheId, $cacheDir)) { // данные из кэша $data = $cache->getVars(); } elseif ($cache->startDataCache()) { // здесь выполняем «тяжёлый» код, например ORM‑запрос $data = [ 'items' => \Bitrix\Highloadblock\HighloadBlockTable::getList([ 'filter' => ['=NAME' => 'MyBlock'], 'select' => ['ID', 'UF_*'], ])