Skip to content

Non-persistent cache manager with LRU and MRU algorithms.

License

Notifications You must be signed in to change notification settings

korotin/limcache

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Limcache

Build Status Scrutinizer Code Quality Code Coverage Code Climate

Limcache is a small non-persistent cache manager that supports LRU and MRU replacement algorithms. Also it has optional Judy support.

Requirements

  • PHP >= 5.4
  • Judy (optional)

Installation

You can install Limcache via Composer:

composer require herroffizier/limcache:dev-master

Usage

At first, choose replacement algorithm:

// Use LRU:
$strategy = new \Limcache\strategy\LRU(100); // 100 is max item count in cache

// Or MRU:
$strategy = new \Limcache\strategy\MRU(100);

After that you can create cache:

$cache = new \Limcache\Cache($strategy);

Since \Limcache\Cache implements \ArrayAccess and \Countable interfaces you can use it as array in most cases:

// Save item in cache:
$cache['key1'] = 'somedata';

// Get item value:
$cache['key1'];

// Try to get non-existent item:
$cache['key2']; // will return null

// Do some ordinary things:
count($cache);
isset($cache['key1']);
unset($cache['key1']);

In addition cache object has few useful methods which may help to determine cache efficiency:

// Get cache hits:
$cache->getHits();

// Get cache misses:
$cache->getMisses();

About

Non-persistent cache manager with LRU and MRU algorithms.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published