Simple cache abstraction layer implementing PSR-16

2.0.1 2023-02-09 23:47 UTC

This package is auto-updated.

Last update: 2024-02-11 07:14:13 UTC


This repository is a simple abstraction layer for key-value caches. It implements PSR-16.

If you need a super-simple way to support PSR-16, sabre/cache helps you get started. It's as hands-off as possible.

It also comes with a test-suite that can be used by other PSR-16 implementations.


Make sure you have composer installed, and then run:

composer require sabre/cache


Read PSR-16 for the API. We follow it to the letter.

In-memory cache

This is useful as a test-double for long-running processes. The Memory cache only lasts as long as the object does.

$cache = new \Sabre\Cache\Memory();

APCu cache

This object uses the APCu api for caching. It's a fast memory cache that's shared by multiple PHP processes.

$cache = new \Sabre\Cache\Apcu();

Memcached cache

This object uses the Memcached extension for caching.

$memcached = new \Memcached();
$memcached->addServer('', 11211);
$cache = new \Sabre\Cache\Memcached($memcached);

You are responsible for configuring memcached, and you just pass a fully instantiated objected to the \Sabre\Cache\Memcached constructor.

Build status

branch status
master Build Status


Head over to the sabre/dav mailinglist, or you can also just open a ticket on GitHub.

Made at fruux

This library is being developed by fruux. Drop us a line for commercial services or enterprise support.