2017-04-13 1 views
0

Hier ist der Controller-Code i verwenden:Caching die Antwort

  • Senden Benutzer zu Hause Ansicht
  • Generieren eines (Cache) HTML-Datei die endgültige Antwort Code enthält

Wäre dies der richtige Weg, dies in Bezug auf den Cache zu tun? Ich bin mir nicht sicher, ob die Rückspulfunktion für ist. Bitte erleuchte mich:

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; 
    } 
+0

Das ist Slim3 richtig? – jmattheis

+0

ja das ist dünn 3 –

Antwort

0

Wenn es nur die Antwort von der gerenderten Seite ist, können Sie die Methode PhpRenderer::fetch() verwenden können. Das gibt die gerenderte Ausgabe, so dass Sie das Zeug nicht auf der

$view = Settings::ABSPATH . '/src/views/home.php'; 
$html = $renderer->fetch($view); 

Die andere Option Response -object tun müssen, ist die Twig-View zu verwenden, die bereits functionallity für das Caching zur Verfügung stellt.