maximebf/cachecache

Caching library for PHP5.3

Installs: 8 590

Dependents: 4

Stars: 30

Watchers: 4

Forks: 7

Open Issues: 1

Language: PHP

1.0.2 2013-08-12 09:30 UTC

README

Caching framework for PHP 5.3+

Build Status

Features:

  • Easy retreival and storing of key, value pairs using the many available methods
  • Cache function calls
  • Available object wrapper to cache calls to methods
  • Pipelines ala Predis (see below)
  • Namespaces
  • TTL variations to avoid all caches to expire at the same time
  • Multiple backends support (apc, file, memcache(d), memory, redis, session)
  • Monolog support
  • Very well documented

CacheCache features are exposed through a Cache object which itself uses backends to store the data. Multiple instances of Cache objects can be managed using the CacheManager.

Full documentation at http://maximebf.github.com/CacheCache/

Examples:

$cache = new CacheCache\Cache(new CacheCache\Backends\Memory());

if (($foo = $cache->get('foo')) === null) {
    $foo = 'bar';
    $cache->set('foo', $foo);
}

if (!$cache->start('foo')) {
    echo "bar\n";
    $cache->end();
}

$cache->call('sleep', array(2));
$cache->call('sleep', array(2)); // won't sleep!

$r = $cache->pipeline(function($pipe) {
    $pipe->set('foo', 'bar');
    $pipe->set('bar', 'foo');
    $pipe->get('foo');
    $pipe->set('foo', 'foobar');
    $pipe->get('foo');
});

More examples in examples/