CodeIgniter-ページキャッシュ

ページをキャッシュすると、ページの読み込み速度が向上します。ページがキャッシュされている場合は、完全にレンダリングされた状態で保存されます。次回、サーバーがキャッシュされたページのリクエストを受け取ると、リクエストされたブラウザに直接送信されます。

キャッシュされたファイルはに保存されます application/cacheフォルダ。キャッシュはページごとに有効にできます。キャッシュを有効にしている間、キャッシュされたフォルダにとどまる必要があるまでの時間を設定する必要があり、その期間が過ぎると自動的に削除されます。

キャッシュを有効にする

いずれかのコントローラの方法で次の行を実行すると、キャッシュを有効にできます。

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

どこ $n の数です minutes, 更新の合間にページをキャッシュしたままにしておきます。

キャッシュを無効にする

キャッシュファイルは有効期限が切れると削除されますが、手動で削除する場合は無効にする必要があります。次の行を実行すると、キャッシュを無効にできます。

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

と呼ばれるコントローラーを作成します Cache_controller.php に保存します 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'); 
      } 
   } 
?>

と呼ばれるビューファイルを作成します test.php に保存します 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>

変更 routes.php ファイルに application/config/routes.php 上記のコントローラーのルートを追加し、ファイルの最後に次の行を追加します。

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

ブラウザに次のURLを入力して、例を実行します。

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

上記のURLにアクセスすると、このためのキャッシュファイルがで作成されることがわかります。 application/cacheフォルダ。ファイルを削除するには、次のURLにアクセスしてください。

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