本文實例講述了ThinkPHP3.2框架操作Redis的方法。分享給大家供大家參考,具體如下:
原本感覺 Redis 應該像是作為數據庫的一種被拿來操作的,可是實際上 thinkphp 3.2 是把 redis 作為緩存的一種方式來進行解析的,從 redis 文件被存放的位置就可以看出來:
/ThinkPHP /Library /Think /Cache /Driver
是作為 Cache,緩存方式的一種被拿來使用的,可是經過我們前面的學習,我們發現 Redis 不光光能做這些。
還有一個發現是這樣的,假設我在 thinkphp 的控制器中執行如下代碼:
<?phpnamespace Home/Controller;use Think/Controller;class IndexController extends Controller { public function index() { // 配置 redis 緩存 $set = array( 'type' =>'redis' , 'host'=>'127.0.0.1' , 'port'=>6379, ); // 實例化 $redis=S($set); // 存儲數據 $redis->name="hello world again"; $redis->id=1; }}
之后我們到 redis-cli.exe 中查看以下存儲的結果:
接下來換種方式存儲:
<?phpnamespace Home/Controller;use Think/Controller;class IndexController extends Controller { public function index() { // 配置 redis 緩存 $set = array( 'type' =>'redis' , 'host'=>'127.0.0.1' , 'port'=>6379, ); // 設置要存儲的數據 $message = array( 'name' =>'yang' , 'id'=>1 ); // 緩存 S('message',$message,$set); }}
再來查看緩存結果:
從上述實驗我們可以得出結論,thinkphp 官方給出的源碼中只是把 redis 作為一個緩存的工具,如果我們需要實現更加豐富的操作的話,就需要自己封裝類了。
看來又要去看 PHP 操作 Redis 了。官方不會像封裝 MySql 一樣給我封裝好啊,直接拿來用多好。
希望本文所述對大家基于ThinkPHP框架的PHP程序設計有所幫助。
新聞熱點
疑難解答
圖片精選