มาทำความรู้จักกับ Codeigniter Caching Driver กัน

Codeigniter 1.7.x จะมีเฉพาะระบบ caching ที่เป็น file based ซึ่งจะได้จากการเก็บ html ที่ถูกสร้างขึ้นจาก views และนำไปเขียนไว้ในไฟล์ มีรูปแบบการใช้งานคือ

$this->output->cache(n)

n เป็นตัวเลขเพื่อระบุว่าจะ cache ไว้เป็นเวลาเท่าไหร่ มีหน่วยเป็น นาที

แต่ใน Codeigniter 2.0 มีการปรับปรุงระบบ caching เพิ่มขึ้น คือ

  1. Alternative PHP Cache (APC) Caching
  2. File-based Caching
  3. Memcached Caching

รูปแบบการใช้งานก็จะเป็นดังนี้ครับ

//โหลด cache driver ถ้าหากเซิฟเวอร์ไม่เปิดใช้งาน APC ก็จะเปลี่ยนเป็นแบบ file-based แทน
$this->load->driver('cache', array('adapter' => 'apc', 'backup' => 'file'));

if ( ! $foo = $this->cache->get('foo'))
{
     echo 'กำลังบันทึกข้อมูลไว้ใน cache!<br />';
     $foo = 'ทดสอบๆ!';

     // cache ไว้ 5 นาที
     $this->cache->save('foo', $foo, 300);
}

echo $foo;

เพื่อนๆ สามารถเข้าไปอ่านรายละเอียดเพิ่มเติมได้ที่ Caching Driver : Codeigniter User Guide ครับ