最新消息:yaf表单扩展中新增加了浮点数、日期和集合的校验。php yaf框架扩展实践三——表单

php中apc缓存的简介和使用示例,附apc.php脚本下载

PHP 3757浏览 2评论

APC全称Alternative PHP Cache,可以缓存php的源码文件,也可以缓存用户数据。记的以前php文件上传到服务器时需要先用zend guard加密下,有了apc就不用了。 从维基百科上看到的消息,apc将被内置在php6中,所以apc还是值的学习下的。

1、安装扩展

在ubuntu 12.04可以直接通过apt-get install php-apc安装apc扩展。

关于windows系统,笔者以前曾在windows下安装过apc,只是运行不稳定,不晓得现在解决了没有。在windows下可以用wincache替代apc,微软自己开发的,非常稳定。

Tips:安装完成后,要记的重启下web服务器。

2、下载apc.php

下载地址:apc_php.zip

apc.php这个脚本可以查看apc的使用情况。界面如下:

apc运行状态查看界面

apc运行状态查看界面

其中有两个选项卡可以稍微关注下:

  • System Cache Entries:这个表示系统缓存选项,都是缓存一些php文件的中间码。
  • User Cache Entries:表示用户数据的缓存,在编码中可以将用户的数据缓存到apc。如果要查看用户数据缓存,需要先修改访问的账号和密码。打开apc.php文件,找到如下两行代码进行修改就可以了:
defaults('ADMIN_USERNAME','apc'); 			// Admin Username
defaults('ADMIN_PASSWORD','password');  	// Admin Password - CHANGE THIS TO ENABLE!!!

3、apc使用示例

apc使用起来非常简单,看下面的几个增加、查询、修改、删除示例。

增加一个缓存,有效时间为3600秒

apc_add('name', 'tom', 3600);

执行代码,然后查看User Cache Entries,可以看到多了一条键值为name的缓存数据:

apc用户数据缓存界面

apc用户数据缓存界面

其中有命中次数、大小、过期时间等等。

查询缓存

apc_add('name', 'tom', 3600);
print apc_fetch('name'); //输出tom

修改缓存

apc_store('name', 'anny', 3600);
print apc_fetch('name'); //输出anny

删除缓存

apc_delete('name');
var_dump(apc_fetch('name')); //输出bool(false)

递增递减数字

如果缓存的内容是数字,可以用apc_ inc自增1,apc_dec自减1。

apc_add('num', 10);
apc_inc('num');
print apc_fetch('num');//输出11
apc_dec('num');
print apc_fetch('num');//输出10

判断缓存是否存在

apc_add('name', 'tom', 3600);
var_dump(apc_exists('name')); //输出bool(true)
var_dump(apc_exists('age')); //bool(false)

关于apc还有一些其他的方法,可以自行参考php官方网站。有什么问题,也可以和我交流。

转载请注明:快乐编程 » php中apc缓存的简介和使用示例,附apc.php脚本下载

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

网友最新评论 (2)

  1. 和 Xcache 比较起来, 哪个更好用呢?
    Ghost4年前 (2013-04-16)回复
    • 陈杰斌
      最近发现apc在内存使用满了之后,会导致http请求错误。非常奇怪,换成memcache就没问题了。xcache倒是没用过。
      陈杰斌4年前 (2013-05-16)回复