<?php
use Atto\Cache\Cache;
require 'Atto/Cache/Cache.php';
require 'Atto/Cache/Item.php';
require 'Atto/Cache/Storage.php';
require 'MySQLStorage.php';
// Lets create this storage now, a custom one
$storage = new MySQLStorage('localhost', 'root', '', 'database', 'cache');
// We use the MySQL Storage engine now
$cache = new Cache($storage, 60); // By default all items have 60 seconds of time to live
// Create some random data
$data = ['foo', 'bar', 'baz'];
// Store new items
$cache->store('some.id.key', $data); // $data will live for 60 seconds (default - Cache constructor)
$cache->store('another.key', $data, 60 * 60 * 24 * 7); // Now $data will live for 7 days
$cache->store('forever', $data, 0); // Using a $ttl less than 1 will indicate that this item never expires
// Retrieve items from the cache
$data = $cache->get('some.id.key');
print_r($cache->get('some.id.key'));
print_r($cache->get('forever'));
if ($data === null) {
// $data does not exist in the cache storage
$data = ['foo', 'bar', 'baz'];
}
// Invalidate data
$cache->invalidate('another.key'); // This will remove an item from the cache storage
|