phpredis單例模式封裝

經過單例模式實現對phpredis鏈接的封裝。php

直接上代碼

<?php

/**
 * Class RedisConnManager
 *
 * 單例模式對redis實例的操做的進一步封裝
 * 主要目的:防止過多的鏈接,一個頁面只能存在一個聲明鏈接
 * 
 * @author :cuihuan
 */
class RedisManager
{
    private static $redisInstance;

    /**
     * 私有化構造函數
     * 緣由:防止外界調用構造新的對象
     */
    private function __construct(){}

    /**
     * 獲取redis鏈接的惟一出口
     */
    static public function getRedisConn(){
        if(!self::$redisInstance instanceof self){
            self::$redisInstance = new self;
        }


        // 獲取當前單例
        $temp = self::$redisInstance;
        // 調用私有化方法
        return $temp->connRedis();
    }

    /**
     * 鏈接ocean 上的redis的私有化方法
     * @return Redis
     */
    static private function connRedis()
    {
        try {
            $redis_ocean = new Redis();
            $redis_ocean->connect(G::$conf['redis-host'], G::$conf['redis-port']);
            $redis_ocean->auth(G::$conf['redis-pass']);

        }catch (Exception $e){
            echo $e->getMessage().'<br/>';
        }

        return $redis_ocean;
    }

}

【轉載請註明:phpredis單例模式封裝 | 靠譜崔小拽redis

相關文章
相關標籤/搜索