Из документов CakePHP (выделено мое):
Метод render () автоматически вызывается в конце каждого запрошенного действия контроллера. Этот метод выполняет всю логику представления (используя данные, которые вы дали при использовании метода set ()), помещает представление в его макет и возвращает его конечному пользователю .
Но, если вы посмотрите на источник для AppController::render
, он вернет обработанный вывод обратно в вызывающий метод. Итак, теоретически вы можете сделать что-то вроде:
$this->autoRender = false;
$outp = $this->render('myView');
// do cleanup stuff
echo $outp;
exit();
Пока у вас autoRender
установлено значение false, вы должны быть хорошими. Я лично не пробовал это, но похоже, что это должно работать так, как вы хотите. Удачи!