php操作redis緩存方法分享
更新時間:2015年06月03日 12:16:08 投稿:hebedich
除了memcache這個比較常用的php的操作類庫,我們可能還非常熟悉一個內(nèi)存緩存的東西,那就是redis,我們給大家分享的這個php技術(shù)文章,就是關(guān)于如何使用php進行操作redis這個內(nèi)存緩存工具類庫的哦。
php redis緩存操作
<?php /** * Redis緩存操作 * @author hxm * @version 1.0 * @since 2015.05.04 */ class RCache extends Object implements CacheFace { private $redis = null; //redis對象 private $sId = 1; //servier服務ID private $con = null;//鏈接資源 /** * 初始化Redis * * @return Object */ public function __construct() { if ( !class_exists('Redis') ) { throw new QException('PHP extension does not exist: Redis'); } $this->redis = new Redis(); } /** * 鏈接memcahce服務 * * @access private * @param string $key 關(guān)鍵字 * @param string $value 緩存內(nèi)容 * @return array */ private function connect( $sid ) { $file = $this->CacheFile(); require $file; if(! isset($cache) ) { throw new QException('緩存配置文件不存在'.$file); } $server = $cache[$this->cacheId]; $sid = isset($sid) == 0 ? $this->sId : $sid;//memcache服務選擇 if ( ! $server[$sid]) { throw new QException('當前操作的緩存服務器配置文件不存在'); } $host = $server[$sid]['host']; $port = $server[$sid]['port']; try { $this->redis->connect( $host , $port ); } catch (Exception $e) { exit('memecache連接失敗,錯誤信息:'. $e->getMessage()); } } /** * 寫入緩存 * * @access private * @param string $key 關(guān)鍵字 * @param string $value 緩存內(nèi)容 * @return array */ public function set( $key , $value , $sid , $expire = 0) { $data = $this->get($key , $sid); //如果已經(jīng)存在key值 if( $data ) { return $this->redis->getset( $key , $value); } else { return $this->redis->set( $key , $value); } } /** * 讀取緩存 * * @access private * @param string $key 關(guān)鍵字 * @param int $sid 選擇第幾臺memcache服務器 * @return array */ public function get( $key , $sid) { $this->connect( $sid ); return $this->redis->get($key); } /** * 清洗(刪除)已經(jīng)存儲的所有的元素 * * @access private * @return array */ public function flush() { $this->connect(); return $this->redis->flushall(); } /** * 刪除緩存 * * @access private * @param string $key 關(guān)鍵字 * @param int $sid 選擇第幾臺memcache服務器 * @return array */ public function remove( $key , $sid) { $this->connect(); return $this->redis->del($key); } /** * 析構(gòu)函數(shù) * 最后關(guān)閉memcache */ public function __destruct() { if($this->redis) { $this->redis->close(); } } }
以上所述就是本文的全部內(nèi)容了,希望大家能夠喜歡。
您可能感興趣的文章:
- php操作redis數(shù)據(jù)庫常見方法實例總結(jié)
- PHP操作Redis數(shù)據(jù)庫常用方法示例
- PHP數(shù)據(jù)庫操作三:redis用法分析
- PHP實現(xiàn)的redis主從數(shù)據(jù)庫狀態(tài)檢測功能示例
- PHP的Laravel框架結(jié)合MySQL與Redis數(shù)據(jù)庫的使用部署
- php實現(xiàn)redis數(shù)據(jù)庫指定庫號遷移的方法
- 30個php操作redis常用方法代碼例子
- redis 隊列操作的例子(php)
- php結(jié)合redis實現(xiàn)高并發(fā)下的搶購、秒殺功能的實例
- php Session存儲到Redis的方法
- PHP操作Redis常用技巧總結(jié)
- php+redis實現(xiàn)商城秒殺功能
- php操作Redis數(shù)據(jù)庫基本示例【安裝、連接、設(shè)置、查詢、斷開】
相關(guān)文章
php后臺多用戶權(quán)限組思路與實現(xiàn)程序代碼分享
很多時候我們再開發(fā)過程中需要考慮到多用戶權(quán)限問題,這篇文章大家可以參考下2012-02-02Yii2框架視圖(View)操作及Layout的使用方法分析
這篇文章主要介紹了Yii2框架視圖(View)操作及Layout的使用方法,結(jié)合具體實例形式分析了Yii2框架視圖操作及布局layout相關(guān)操作技巧,需要的朋友可以參考下2019-05-05PHP+Redis 消息隊列 實現(xiàn)高并發(fā)下注冊人數(shù)統(tǒng)計的實例
下面小編就為大家分享一篇PHP+Redis 消息隊列 實現(xiàn)高并發(fā)下注冊人數(shù)統(tǒng)計的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-01-01Zend Framework教程之請求對象的封裝Zend_Controller_Request實例詳解
這篇文章主要介紹了Zend Framework教程之請求對象的封裝Zend_Controller_Request用法,結(jié)合實例形式詳細分析了請求對象封裝的原理,使用方法與相關(guān)注意事項,需要的朋友可以參考下2016-03-03