当我开始使用 APC 时,我希望有一种方法可以为缓存项目创建类别,而不仅仅是键/值对。因为我只想为一个应用程序或我的应用程序的一部分清除缓存。当我发现它只是键/值对时,我脑海中冒出一个新问题:有没有办法通过 REGEX 而不是通过精确的键匹配来过滤 APC 缓存中的键?
问问题
236 次
1 回答
0
APC 实际上具有过滤器(在配置中)以过滤掉不应缓存的文件。不幸的是,这不是您想要的,目前没有 APC 函数可以根据正则表达式检索键列表。
然而你可以,
- 要么在 APC 中存储具有键列表的数组
- 在包含文件中维护这样的数组(取决于列表的动态程度)
在 APC 中,假设您有一个键列表
'x-orange' : value, 'x-apple' : value, 'x-banana' : value,
'x-Life of Pi' : value, 'x-The Hobbit' : value,...
例如,包含文件或 APC 变量中的类别数组
$cats = array('Fruits' => array('orange','apple','banana'),
'Movies' => array('Life of Pi', 'The Hobbit'), ...
然后您可以按类别检索 APC 数据
$mycat = ...; // eg Movies
foreach ($cats[$mycat] as $key) {
echo "$key : " . apc_fetch('x-' . $key);
}
于 2013-06-09T13:30:50.227 回答