galancev / smart-cache
智能缓存组件
v2.0.1
2020-01-29 05:52 UTC
Requires
- php: >=5.4.0
- galancev/instance: ^2.0
README
又一个用于缓存的解决方案。
用法
use Components\Cache\SmartCache; $cache = (new SmartCache()) ->setGroup('test') ->setKey('supertest1') ->setExpire(5) ->get(); if ($cache->hasResult()) { $need = $cache->getResult(); } else { $need = rand(0, 666); $cache->set($need); } Dev::pre($need);
或者对于不喜欢链式调用的用户的一种方案
$cache = SmartCache::factory([ 'group' => 'test', 'key' => 'supertest1', 'expire' => 5, 'scatter' => 0, ])->get();
或者,对于喜欢单一方法的人来说,还有另一种方案
$cache = SmartCache::init('test', 'supertest1', 5, 0);
或者,还有一种通过闭包实现的清晰方案,它真的很现代,很棒
$data = (new SmartCache()) ->setGroup('test') ->setKey('test') ->setExpire(5) ->remember(function () { $res = App::$DB->Query('SELECT * FROM b_user LIMIT 1'); if(!$res) return false; return $res->FetchAll(); });