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的使用情況。界面如下:

其中有兩個選項卡可以稍微關注下:
1 System Cache Entries:這個表示系統緩存選項,都是緩存一些php文件的中間碼。
2 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_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)