Download the PHP package jarir-ahmed/cache without Composer
On this page you can find all versions of the php package jarir-ahmed/cache. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download jarir-ahmed/cache
More information about jarir-ahmed/cache
Files in jarir-ahmed/cache
Package cache
Short Description Framework-agnostic caching toolkit for PHP: PSR-16 + PSR-6, Redis/Memcached/APCu/File/PDO/tiered stores, tags, atomic locks, stampede protection, and HTTP caching (ETag/304, full-page).
License MIT
Informations about the package cache
jarir-ahmed/cache
A framework-agnostic caching toolkit for PHP — every common cache type behind one clean API: in-memory, file, APCu, Redis, Memcached, PDO (database), and tiered (multi-layer). Plus PSR-16 + PSR-6 for drop-in use in any framework, tags, atomic locks, stampede protection, and HTTP caching (ETag/304, full-page, PSR-15 middleware).
Zero required dependencies beyond the PSR cache interfaces. Redis and Memcached work with no PHP extension (built-in raw-socket clients) and automatically use ext-redis / ext-memcached when present.
Install
Why
"Framework-level caching for any framework" = implement the standards. This package is a PSR-16 and PSR-6 implementation, so it drops straight into Laravel, Symfony, Slim, Mezzio, Doctrine, or raw PHP — while also giving you a richer native API and an HTTP caching layer most libraries skip.
Quick start
Config-driven, named stores
Stores
| Driver | Class | Notes |
|---|---|---|
array |
ArrayStore |
per-request memory |
file |
FileStore |
sharded dirs, atomic writes |
apcu |
ApcuStore |
shared memory (ext-apcu) |
redis |
RedisStore |
raw-socket RESP or ext-redis |
memcached |
MemcachedStore |
raw-socket text proto or ext-memcached |
pdo |
PdoStore |
sqlite/mysql/pgsql, self-creating table |
null |
NullStore |
disables caching |
tiered |
TieredStore |
L1+L2, read-through back-fill |
Redis without any extension:
PSR-16 and PSR-6 (use it in any framework)
- Symfony: pass the PSR-6 pool anywhere a
CacheItemPoolInterfaceis expected. - Doctrine: same — it consumes PSR-6.
- Laravel: use
Bridge\LaravelStoreto register a custom driver (Cache::extend(...)).
Tags
Atomic locks & stampede protection
HTTP caching
Full-page cache:
PSR-15 middleware (Slim/Mezzio/Laminas):
Serializers
php (default, any value), json (portable, scalars/arrays), igbinary (compact binary, needs ext-igbinary). Set per store via the serializer config key or pass a Serializer instance.
Architecture
Testing
The suite runs one shared contract against every store. Redis/Memcached tests run when those servers are reachable and skip otherwise; raw-socket and extension paths are both covered.
License
MIT.