composer project akeb/cache
Composer config
{
"require": {
"akeb/cache": "^1.1.6"
},
"repositories": [
{
"type": "vcs",
"url": "https://github.com/AKEB/Framework-AKEB-cache"
}
]
}
or
composer require akeb/cache
global $CACHE_SERVERS;
$CACHE_SERVERS = [
'default' => ['host'=>'localhost', 'port' => 11211]
];
require_once("../vendor/autoload.php");
define('USE_FILE_CACHE', true); // Forcing the use of the file cache
define('PATH_CACHE', '/opt/www/cache/'); // Cache file directory
require_once("../vendor/autoload.php");
global $CACHE_SERVERS;
$CACHE_SERVERS = [
'default' => ['host'=>'localhost', 'port' => 11211], // Description memcached servers
];
require_once("../vendor/autoload.php");
$dateString = '';
$cache = new \Cache('testDate','default'); // Init Cache Object with name "testDate"
if (!$cache->isValid() && $cache->tryLock()) { // If cache not valid and we can lock cache
// Do something
$dateString = date("Y-m-d H:i:s", time());
$cache->update($dateString,600); // Update cache data
$cache->freeLock(); // Free lock
} else { // Cache valid, or we can't lock cache
$dateString = $cache->get(); // get data from cache
}
echo $dateString.PHP_EOL;
define('PATH_CACHE', './tmp/'); // Cache file directory
require_once("../vendor/autoload.php");
$dateString = '';
$cache = new \Cache('testDate','default'); // Init Cache Object with name "testDate"
if (!$cache->isValid() && $cache->tryLock()) { // If cache not valid and we can lock cache
// Do something
$dateString = date("Y-m-d H:i:s", time());
$cache->update($dateString,600); // Update cache data
$cache->freeLock(); // Free lock
} else { // Cache valid, or we can't lock cache
$dateString = $cache->get(); // get data from cache
}
echo $dateString.PHP_EOL;
See the examples
folder for more details.
./dockerTest.sh