[求助]求救APC高手~~~APC取出全部的缓存的条目,有什么办法?

afeiqiang 2012-02-16 12:01:12
假如不清楚缓存的条目都有哪些key,还有办法取出全部的缓存条目吗?
求救APC高手~~~
...全文
67 点赞 收藏 6
写回复
6 条回复
afeiqiang 2012年02月16日
不能沉,绝对不能沉
回复 点赞
afeiqiang 2012年02月16日
[Quote=引用 4 楼 foolbirdflyfirst 的回复:]

用迭代器 + 正则得到所有缓存条目,默认应该是active的而不是delete的.
PHP code
<?php
for($i=0;$i<10;$i++)
{
${'test'.$i} = "test{$i}";
apc_store("pos_{$i}",${'test'.$i});
}

$results = new APCIterator('user', ……
[/Quote]

明了,非常感谢!
回复 点赞
afeiqiang 2012年02月16日
[Quote=引用 4 楼 foolbirdflyfirst 的回复:]

用迭代器 + 正则得到所有缓存条目,默认应该是active的而不是delete的.
PHP code
<?php
for($i=0;$i<10;$i++)
{
${'test'.$i} = "test{$i}";
apc_store("pos_{$i}",${'test'.$i});
}

$results = new APCIterator('user', ……
[/Quote]

高手,APCIterator 是什么?应该不是php内置的类型吧?
回复 点赞
foolbirdflyfirst 2012年02月16日
用迭代器 + 正则得到所有缓存条目,默认应该是active的而不是delete的.
<?php
for($i=0;$i<10;$i++)
{
${'test'.$i} = "test{$i}";
apc_store("pos_{$i}",${'test'.$i});
}

$results = new APCIterator('user', '/^.*$/');

while( !!($rs = $results->current()) )
{
echo "key:{$rs['key']} -> value:{$rs['value']}<br/>";
$results->next();
} /**我这边测试的结果
key:pos_0 -> value:test0
key:pos_1 -> value:test1
key:pos_2 -> value:test2
key:pos_3 -> value:test3
key:pos_4 -> value:test4
key:pos_5 -> value:test5
key:pos_6 -> value:test6
key:pos_7 -> value:test7
key:pos_8 -> value:test8
key:pos_9 -> value:test9
*/
?>


apc_cache_info()函数可以得到缓存opcode的php文件,未过期的都在里面,比如你一份代码文件开启apc默认缓存后,改了n次,历史文件会被缓存住,这算是apc一个弊端。
回复 点赞
发动态
发帖子
基础编程
创建于2007-09-28

9735

社区成员

14.0w+

社区内容

从PHP安装配置,PHP入门,PHP基础到PHP应用
社区公告
暂无公告