http://www.php20.cn/article/117
在很多业务中,咱们都会碰到需要缓存数据的时候,而缓存方案有很多,也可以借助redis,memcache等第三方来进行缓存
本文主要讲解APCu扩展的缓存
扩展下载地址:http://pecl.php.net/package/APCu
php.ini需要配置:
extension=php_apcu.dll
apc.enabled=1
apc.shm_size=32M
apc.enable_cli=1
具体配置可查看http://php.net/manual/zh/apcu.configuration.php
函数:
1
2
3
4
5
6
7
8
9
10
11
12
|
apcu_add -数据存储中缓存的新变
apcu_cache_info -检索缓存的信息从APCu的数据存储 获取数据存储列表(不会返回value),只有定义值的信息
apcu_cas更新旧值和新值
apcu_clear_cache -清除缓存的
apcu_dec -减少存储的值(必须数值型)
apcu_delete -删除存储变量从缓存
apcu_entry -自动读取或生成一个缓存条目
apcu_exists -检查项目存在
apcu_fetch从缓存取存储变量
apcu_inc增加存储的值(必须数值型)
apcu_sma_info -检索高招共享内存分配信息
apcu_store -数据存储区中的缓存变量
|
具体说明可查看:http://php.net/manual/zh/book.apcu.php
示例
1
2
3
4
|
$key='tioncico';
$value='仙士可';
var_dump(apcu_store($key , $value));
var_dump(apcu_fetch( $key ));
|
使用web方式访问(注意,php-cli访问结束后无法保存缓存值):
然后注释掉apcu_store
1
2
3
4
|
$key='tioncico';
$value='仙士可';
//var_dump(apcu_store($key , $value));
var_dump(apcu_fetch( $key ));
|
使用web方式访问,正常输出
其他函数可自测
注意:php-cli模式运行不能保存到下次运行
在FastCGI模式下重启后将会清除缓存