Код: Выделить всё
// функция, которую надо кэшировать
function getStructure($department, $href = 0){
$html = '';
// промежуточные команды по формированию $html
// в том числе с вызовом рекурсии
$html .= getStructure($child, $count);
...
return $html; // возвращение сформированной строки
}
Код: Выделить всё
// вот так попытался описать функцию, которая будет кэшировать
function getCachedStructure($dept, $href)
{
return Yii::$app->cache->getOrSet('DepartmentsStructure', getStructure($dept, $href), 60 * 60 * 24 * 7);
}
Код: Выделить всё
// вызов функции (получение результата из кэша)
echo getCachedStructure($dept, 0);