国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > PHP > 正文

PHP實現的Redis多庫選擇功能單例類

2024-05-04 23:59:01
字體:
來源:轉載
供稿:網友

本文實例講述了PHP實現的Redis多庫選擇功能單例類。分享給大家供大家參考,具體如下:

前言

qq群里有同學問redis如何進行多庫選擇,用php實現了一下,還望各位多多指點

代碼

<?phpclass MultiRedisConnect{  /**   * hostname   *   * @var string   */  const REDISHOSTNAME = "127.0.0.1";  /**   * port   *   * @var int   */  const REDISPORT = 6379;  /**   * timeout   *   * @var int   */  const REDISTIMEOUT = 0;  /**   * password   *   * @var string   */  const REDISPASSWORD = "123456";  /**   * 類單例數組   *   * @var array   */  private static $instance = array();  /**   * redis連接句柄   *   * @var object   */  private $redis;  /**   * hash的key   *   * @var int   */  private $hash;  /**   * 私有化構造函數,防止類外實例化   *   * @param int $dbnumber   */  private function __construct ($dbnumber)  {    $dbnumber = (int) $dbnumber;    $this->hash = $dbnumber;    $this->redis = new Redis();    $this->redis->connect(self::REDISHOSTNAME, self::REDISPORT, self::REDISTIMEOUT);    $this->redis->auth(self::REDISPASSWORD);    $this->redis->select($dbnumber);  }  private function __clone ()  {}  /**   * 獲取類單例   *   * @param int $dbnumber   * @return object   */  public static function getRedisInstance ($dbnumber)  {    $hash = (int) $dbnumber;    if (! isset(self::$instance[$hash])) {      self::$instance[$hash] = new MultiRedisConnect($dbnumber);    }    return self::$instance[$hash];  }  /**   * 獲取redis的連接實例   *   * @return object   */  public function getRedisConnect ()  {    return $this->redis;  }  /**   * 關閉單例時做清理工作   */  public function __destruct ()  {    $key = $this->hash;    self::$instances[$key]->redis->close();    self::$instances[$key] = null;  }}?>

希望本文所述對大家PHP程序設計有所幫助。


注:相關教程知識閱讀請移步到PHP教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 郁南县| 泸定县| 威宁| 洞口县| 山东省| 临桂县| 浦县| 南宫市| 平果县| 霍州市| 白河县| 宿州市| 鲁甸县| 牡丹江市| 开阳县| 香河县| 图木舒克市| 信阳市| 平湖市| 元江| 阳春市| 吴桥县| 清河县| 宜州市| 山阴县| 出国| 望城县| 黄冈市| 晴隆县| 扬中市| 三穗县| 定边县| 五原县| 上饶市| 萍乡市| 洪洞县| 崇阳县| 丹凤县| 互助| 车险| 阜宁县|