crodas / remember
记住之前所做的计算(文件缓存)
v0.5.2
2018-07-05 03:30 UTC
Requires
- crodas/file-util: ^0.2.2
Requires (Dev)
- crodas/phpunit-compat: ^1.7
- crodas/simple-view-engine: ^0.1.37
- phpdocumentor/phpdocumentor: ^2.9
README
在PHP中跨请求记住事物的最简单方式。
动机
我喜欢生成代码,并且需要一个仅在内容发生变化时重建的方法。
工作原理
use Remember\Remember;
$function = Remember::wrap('name', function(Array $args, Array $files) {
// do some that is expensive
return $result;
});
// It will calculate once and cache the result
// until __FILE__ changes.
$result = $function([__FILE__, 'foobar']);
低级API
use Remember\Remember;
$ns = Remember::ns('foobar');
$result = $ns->get([__FILE__], $isValid);
if (!$isValid) {
// do something
$result = ...;
$ns->store([__FILE__], $result);
}