缓存响应

Caching the response

这是我使用的控制器代码:

关于缓存,这是这样做的正确方法吗?我不确定倒带功能是否适用。请赐教:

public function index( Request $request, Response $response )
    {
        $view = '/src/views/home.php';

        $this->render( $response, Settings::ABSPATH . $view );
        $body = $response->getBody();
        $body->rewind();
        $html = $body->getContents();
        file_put_contents( Settings::ABSPATH . '/tmp/cachePages/home.html', $html );
        return;
    }

当只有渲染页面的响应时,可以使用方法PhpRenderer::fetch()。 returns 渲染输出,所以你不需要在 Response-object

上做这些事情
$view = Settings::ABSPATH . '/src/views/home.php';
$html = $renderer->fetch($view);

另一种选择是使用 Twig-View,它已经提供了缓存功能。