chillerlan/php-cache

A psr/simple-cache implementation. PHP 8.1+

Maintainers

👁 codemasher

Package info

github.com/chillerlan/php-cache

pkg:composer/chillerlan/php-cache

Statistics

Installs: 226 886

Dependents: 14

Suggesters: 0

Stars: 15

Open Issues: 0

5.1.0 2024-02-25 16:01 UTC

Requires

Requires (Dev)

Suggests

None

Provides

Conflicts

None

Replaces

None

MIT 35f1596660c49078edb01ddc8fedd259239ed3a6

cachepsr-16php8

This package is auto-updated.

Last update: 2026-06-07 04:13:19 UTC


README

A psr/simple-cache implementation for PHP 8.1+.

👁 PHP Version Support
👁 version
👁 license
👁 Coverage
👁 Codacy
👁 Packagist downloads

👁 Continuous Integration

Features:

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-main with a version constraint, e.g. ^4.1 - see releases for valid versions)

{
	"require": {
		"php": "^8.1",
		"chillerlan/php-cache": "dev-main"
	}
}

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(['cacheFilestorage' => __DIR__.'/../.cache']));

// Session
$cache = new SessionCache(new CacheOptions(['cacheSessionkey' => '_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):bool

Disclaimer!

I don't take responsibility for molten memory modules, bloated hard disks, self-induced DoS, broken screens etc. Use at your own risk! 🙈