tjm/cache

存储PHP数据的简单文件系统缓存实现

dev-master 2024-08-28 19:18 UTC

This package is auto-updated.

Last update: 2024-08-28 19:19:14 UTC


README

存储PHP数据的简单文件系统缓存实现。请注意,这是一个非常早期的实现,可能会发生显著变化。我希望使其与psr-6 / psr-16兼容,但仍然允许使用计算器/验证器功能(如果需要)。

使用

TJM\Cache\Pool

__construct($path = '/tmp/tjm-cache')

get(string $key, callable $calculator = null, int|bool|callable $validator = true)

  • $key: 要存储的项目的字符串引用
  • $calculator: 可调用函数,返回缓存值。仅在缓存无效时运行,然后存储在缓存中
  • $validator: 验证缓存。
    • false: 总是无效
    • true: 如果已经在缓存中则为无效
    • int: 自创建以来要考虑过时的秒数
    • callable: 返回布尔值,表示项目是否有效

返回缓存或计算值。

示例

$cache = new TJM\Cache\Pool();
$items = $cache->get('items', function() use($db){
	return $db->getItems();
}, 1200);

第一次运行时将获取 $db 中的项目。如果下一次运行在1200秒以内,则将从缓存中获取它们。一旦1200秒过去,下一次运行将再次从 $db 获取。