chillerlan/php-cache
A psr/simple-cache implementation for PHP 7.4+.
Features:
- PSR-16 simple-cache-implementation
- persistent: File based, Memcached, Redis
- non-persistent: Session, Memory
Requirements
Documentation
Installation using composer
You can simply clone the repo and run composer install in the root directory.
In case you want to include it elsewhere, just add the following to your composer.json:
(note: replace dev-master with a version constraint,
e.g. ^3.1 - see releases for valid versions)
{
"require": {
"php": "^7.4",
"chillerlan/php-cache": "dev-master"
}
}Installation via terminal: composer require chillerlan/php-cache
Profit!
Usage
Just invoke a cache instance with the desired CacheInterface like so:
// Redis
$redis = new Redis;
$redis->pconnect('127.0.0.1', 6379);
$cache = new RedisCache($redis);
// Memcached
$memcached = new Memcached('myCacheInstance');
$memcached->addServer('localhost', 11211);
$cache = new MemcachedCache($memcached);
// APCU
$cache = new APCUCache;
// File
$cache = new FileCache(new CacheOptions(['filestorage' => __DIR__.'/../.cache']));
// Session
$cache = new SessionCache(new CacheOptions(['cachekey' => '_my_session_cache']));
// Memory
$cache = new MemoryCache;Methods
See: Psr\SimpleCache\CacheInterface
$cache->get(string $key, $default = null); // -> mixed
$cache->set(string $key, $value, int $ttl = null):bool
$cache->delete(string $key):bool
$cache->has(string $key):bool
$cache->clear():bool
$cache->getMultiple(array $keys, $default = null):array // -> mixed[]
$cache->setMultiple(array $values, int $ttl = null):bool
$cache->deleteMultiple(array $keys):boolDisclaimer!
I don't take responsibility for molten memory modules, bloated hard disks, self-induced DoS, broken screens etc. Use at your own risk!

Formed in 2009, the Archive Team (not to be confused with the archive.org Archive-It Team) is a rogue archivist collective dedicated to saving copies of rapidly dying or deleted websites for the sake of history and digital heritage. The group is 100% composed of volunteers and interested parties, and has expanded into a large amount of related projects for saving online and digital history.
