how cache works in codeigniter code example

Example 1: cache data in codeigniter

if (! function_exists('getCacheSettings')){
	function getCacheSettings($key)
	{
		if ($cacheSettingValue = checkCachedValue($key)) {
			return $cacheSettingValue;
		}

		$ci = & get_instance();
		$result = $ci->db->get_where('settings', array('key' => $key));

		if ($result->num_rows() > 0) {
			$fetchData = $result->row();
			cacheFetchedData($key, base64_decode($fetchData->value));
			return base64_decode($fetchData->value);
		}
		return null;
	}
}

if (! function_exists('checkCachedValue')){
	function checkCachedValue($key)
	{
		$ci = & get_instance();
		$ci->load->driver('cache', array('adapter' => 'file'));
		$cacheKeyData = $ci->cache->get("icd10_".$key);

		return !empty($cacheKeyData) ? $cacheKeyData : false;
	}
}

if (! function_exists('cacheFetchedData')){
	function cacheFetchedData($key, $fetchedData)
	{
		$ci = & get_instance();
		$ci->load->driver('cache', array('adapter' => 'file'));
		// Save into the cache for 12 Hours
		$ci->cache->save('icd10_'.$key, $fetchedData, 60 * 60 * 12);
		return $fetchedData;
	}
}


getCacheSettings('KEY_NAME');

$this->cache->delete('cache_item_id');

This method will ‘clean’ the entire cache. If the deletion of the cache files
fails, the method will return FALSE.

$this->cache->clean();

refrence:
https://www.codeigniter.com/userguide3/libraries/caching.html#example-usage

Example 2: codeigniter web page cache based on user

class MY_Output extends CI_Output

Tags:

Php Example