// boilerplate code example with Memcached, but any
// MatthiasMullie\Scrapbook\KeyValueStore adapter will work
$client = new \Memcached();
$client->addServer('localhost', 11211);
$cache = new \MatthiasMullie\Scrapbook\Adapters\Memcached($client);
// create Pool object from cache engine
$pool = new \MatthiasMullie\Scrapbook\Psr6\Pool($cache);
// get item from Pool
$item = $pool->getItem('key');
// get item value
$value = $item->get();
// ... or change the value & store it to cache
$item->set('updated-value');
$pool->save($item);
PSR-6
(a PHP-FIG standard) is a drastically different cache model than KeyValueStore &
psr/simplecache: instead of directly querying values from the cache, psr/cache
basically operates on value objects (Item) to perform the changes, which then
feed back to the cache (Pool.)
It doesn’t let you do too many operations. If get, set, delete (and their
*multi counterparts) and delete is all you need, you’re probably better off
using this (or psr/simplecache) as this interface is also supported by other
cache libraries.
This interface bridges the gap between KeyValueStore based adapters & features, and PSR-6: any of the Scrapbook tools are accessible in a PSR-6 compatible manner.
Methods Pool
getItem($key): Item
Returns a Cache Item representing the specified key.
getItems(array $keys = array()): Item[]
Returns a traversable set of cache items.
hasItem($key): bool
Confirms if the cache contains specified cache item.
clear(): bool
Deletes all items in the pool.
deleteItem($key): bool
Removes the item from the pool.
deleteItems(array $keys): bool
Removes multiple items from the pool.
save(CacheItemInterface $item): bool
Persists a cache item immediately.
saveDeferred(CacheItemInterface $item): bool
Sets a cache item to be persisted later.
commit(): bool
Persists any deferred cache items.
Methods Item
getKey(): string
Returns the key for the current cache item.
get(): mixed
Retrieves the value of the item from the cache associated with this object's key.
isHit(): bool
Confirms if the cache item lookup resulted in a cache hit.
set($value): static
Sets the value represented by this cache item.
expiresAt($expiration): static
Sets the expiration time for this cache item.
expiresAfter($expiration): static
Sets the expiration time for this cache item.

