CodeIgniter - Caching Halaman
Caching halaman akan meningkatkan kecepatan memuat halaman. Jika halaman di-cache, maka itu akan disimpan dalam status render sepenuhnya. Lain kali, ketika server mendapat permintaan untuk halaman yang di-cache, itu akan langsung dikirim ke browser yang diminta.
File cache disimpan di application/cachemap. Caching dapat diaktifkan per halaman. Saat mengaktifkan cache, kita perlu mengatur waktu, hingga waktu itu perlu tetap di folder cache dan setelah periode itu, itu akan dihapus secara otomatis.
Aktifkan Caching
Caching dapat diaktifkan dengan menjalankan baris berikut di salah satu metode pengontrol.
$this->output->cache($n);
Dimana $n adalah jumlah minutes, Anda ingin halaman tetap di-cache di antara refresh.
Nonaktifkan Caching
File cache dihapus ketika kedaluwarsa tetapi ketika Anda ingin menghapusnya secara manual, maka Anda harus menonaktifkannya. Anda dapat menonaktifkan cache dengan menjalankan baris berikut.
// Deletes cache for the currently requested URI
$this->output->delete_cache();
// Deletes cache for /foo/bar
$this->output->delete_cache('/foo/bar');
Contoh
Buat pengontrol bernama Cache_controller.php dan simpan di 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');
}
}
?>
Buat file tampilan bernama test.php dan simpan di 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>
Mengubah routes.php mengajukan application/config/routes.php untuk menambahkan rute untuk pengontrol di atas dan menambahkan baris berikut di akhir file.
$route['cachecontroller'] = 'Cache_controller';
$route['cachecontroller/delete'] = 'Cache_controller/delete_file_cache';
Ketik URL berikut di browser untuk menjalankan contoh.
http://yoursite.com/index.php/cachecontroller
Setelah mengunjungi URL di atas, Anda akan melihat bahwa file cache untuk ini akan dibuat di application/cachemap. Untuk menghapus file, kunjungi URL berikut.
http://yoursite.com/index.php/cachecontroller/delete