PHP-EasyCache
The PHP EasyCache Class is an easy & fast way to cache 3rd party API calls with lossless data compression support.
Usage
A very basic usage example:
$cache = new iProDev\Util\EasyCache();
$latest_tweet = $cache->get_data('tweet', 'http://search.twitter.com/search.atom?q=from:chawroka&rpp=1');
echo $latest_tweet;
A more advanced example:
$cache = new iProDev\Util\EasyCache();
$cache->cache_path = 'cache/';
$cache->cache_time = 3600;
$data = $cache->get('identity_keyword');
if(!$data) {
$data = $cache->get_contents('http://some.api.com/file.json');
$cache->set('identity_keyword', $data);
}
var_dump($data);
An example with compressing data:
$cache = new iProDev\Util\EasyCache();
$cache->compress_level = 9;
$data = $cache->get_data('identity_keyword', 'http://some.api.com/file.json');
var_dump($data);
API Methods
$data = "Some data to cache";
// Call EasyCache
$cache = new iProDev\Util\EasyCache();
// SET a Data into Cache
$cache->set('identity_keyword', $data);
// GET a Data from Cache
$data = $cache->get('identity_keyword');
// Check that the data is cached
$is_cached = $cache->is_cached('identity_keyword');
// Get the Data from URL and cache it
$data = $cache->get_data('identity_keyword', 'http://search.twitter.com/search.atom?q=from:chawroka&rpp=1');
// Helper function for retrieving data from url without cache
$data = $cache->get_contents('http://search.twitter.com/search.atom?q=from:chawroka&rpp=1');
// REMOVE a Cache item
$cache->delete('identity_keyword');
// REMOVES all Cache expired items
$cache->flush_expired();
// REMOVES all Cache items
$cache->flush();
Configuration
// Call EasyCache $cache = new iProDev\Util\EasyCache(); // Path to cache folder (with trailing /) $cache->cache_path = 'cache/'; // Cache file extension $cache->cache_extension = '.cache'; // Length of time to cache a file (in seconds) $cache->cache_time = 3600; // Lossless data compression level. 1 - 9; 0 to disable $cache->compress_level = 0;
License
Released under the MIT license.
Dont forget to follow us on twitter or like our page on facebook :-)
and take a look at our premium scripts too ;-)




