Skip to content
/ cache Public

Essentials for getting started with PSR-6 and PSR-16 caching.

License

LGPL-3.0, GPL-3.0 licenses found

Licenses found

LGPL-3.0
COPYING.LESSER
GPL-3.0
COPYING
Notifications You must be signed in to change notification settings

eufony/cache

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

49 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

The Eufony Cache Package

Packagist Downloads GitHub Stars Issues
License Community Built

eufony/cache provides the most trivial implementations of PSR-6 and PSR-16 as well as other essentials for getting started with caching.

eufony/cache is a small PHP library that handles basic caching needs without overcomplicating things. It implements the simplest kinds cache pools, supporting both the PSR-6 and PSR-16 standards, plus:

  • Adapter classes to convert between PSR-6 and PSR-16 caching implementations.
  • Utility classes to aid in the implementation of other caching backends.
  • An extension to the caching standards using a tag-based cache invalidation technique.
  • A framework to hook in to and modify the cache values on their way in and out of the pool.

Interested? Here's how to get started.

Getting started

Installation

eufony/cache is released as a Packagist package and can be easily installed via Composer with:

composer require "eufony/cache"

Basic Usage

For a more detailed documentation, see here.

eufony/cache provides three different caching implementations:

// An in-memory cache pool using a PHP array.
$cache = new ArrayCache();

// An in-memory cache pool using the `apcu` extension,
// which can share cache values between processes on the same host.
$cache = new ApcuCache();

// A fake cache based on the Null Object Pattern.
$cache = new NullCache();

You can extend these cache pools using marshallers and a tag-based cache invalidation interface.

It also provides adapter classes to convert between PSR-6 and PSR-16 cache implementations:

// Convert from PSR-6 to PSR-16.
$cache = new Psr16Adapter(/* ... */);

// Convert from PSR-16 to PSR-6.
$cache = new Psr6Adapter(/* ... */);

Contributing

Found a bug or a missing feature? You can report it over at the issue tracker.

License

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this program. If not, see https://www.gnu.org/licenses/.

About

Essentials for getting started with PSR-6 and PSR-16 caching.

Topics

Resources

License

LGPL-3.0, GPL-3.0 licenses found

Licenses found

LGPL-3.0
COPYING.LESSER
GPL-3.0
COPYING

Stars

Watchers

Forks

Languages