CodeIgniter - Mise en cache de page

La mise en cache d'une page améliorera la vitesse de chargement de la page. Si la page est mise en cache, elle sera stockée dans son état entièrement rendu. La prochaine fois, lorsque le serveur recevra une demande pour la page mise en cache, elle sera directement envoyée au navigateur demandé.

Les fichiers mis en cache sont stockés dans application/cachedossier. La mise en cache peut être activée par page. Lors de l'activation du cache, nous devons définir l'heure à laquelle il doit rester dans le dossier mis en cache et après cette période, il sera supprimé automatiquement.

Activer la mise en cache

La mise en cache peut être activée en exécutant la ligne suivante dans n'importe quelle méthode du contrôleur.

$this->output->cache($n);

$n est le nombre de minutes, vous souhaitez que la page reste en cache entre les actualisations.

Désactiver la mise en cache

Le fichier cache est supprimé lorsqu'il expire, mais lorsque vous souhaitez le supprimer manuellement, vous devez le désactiver. Vous pouvez désactiver la mise en cache en exécutant la ligne suivante.

// Deletes cache for the currently requested URI 
$this->output->delete_cache();
  
// Deletes cache for /foo/bar 
$this->output->delete_cache('/foo/bar');

Exemple

Créez un contrôleur appelé Cache_controller.php et enregistrez-le dans application/controller/Cache_controller.php

<?php 
   class Cache_controller extends CI_Controller { 
	
      public function index() { 
         $this->output->cache(1); 
         $this->load->view('test'); 
      }
		
      public function delete_file_cache() { 
         $this->output->delete_cache('cachecontroller'); 
      } 
   } 
?>

Créez un fichier de vue appelé test.php et enregistrez-le dans application/views/test.php

<!DOCTYPE html> 
<html lang = "en">
 
   <head> 
      <meta charset = "utf-8"> 
      <title>CodeIgniter View Example</title> 
   </head>
	
   <body> 
      CodeIgniter View Example 
   </body>
	
</html>

Changer la routes.php déposer dans application/config/routes.php pour ajouter une route pour le contrôleur ci-dessus et ajouter la ligne suivante à la fin du fichier.

$route['cachecontroller'] = 'Cache_controller'; 
$route['cachecontroller/delete'] = 'Cache_controller/delete_file_cache';

Tapez l'URL suivante dans le navigateur pour exécuter l'exemple.

http://yoursite.com/index.php/cachecontroller

Après avoir visité l'URL ci-dessus, vous verrez qu'un fichier cache sera créé à cet effet dans application/cachedossier. Pour supprimer le fichier, visitez l'URL suivante.

http://yoursite.com/index.php/cachecontroller/delete