PHP实现的Redis多库选择功能单例类
时间:2017-11-22 16:29:53|栏目:PHP|点击: 次
本文实例讲述了PHP实现的Redis多库选择功能单例类。分享给大家供大家参考,具体如下:
前言
qq群里有同学问redis如何进行多库选择,用php实现了一下,还望各位多多指点
class 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自定义函数判断是否为Get、Post及Ajax提交的方法
栏 目:PHP
本文标题:PHP实现的Redis多库选择功能单例类
本文地址:http://www.ziyuanwuyou.com/html/chengxusheji/PHPjiaocheng/20.html
您可能感兴趣的文章
- 12-18PHP的魅力:解锁Web开发的无限可能
- 12-18深入了解PHP:Web开发的必备技能
- 12-18PHP在动态网站设计中的实战应用
- 12-18PHP:构建高效Web服务的秘密武器
- 12-18PHP在网站开发中的关键作用及最佳实践
- 12-18探索PHP的无限可能:在Web开发中的实际应用场景
- 12-18PHP在网站开发中的重要性及其优势分析
- 12-18从基础到进阶:PHP在Web开发中的全方位解析
- 12-18PHP助力开发者实现创意无限
- 12-18PHP实战:轻松搭建强大的Web应用程序
阅读排行
推荐教程
- 12-18探索PHP的无限可能:在Web开发中的实际应用场景
- 12-18PHP在网站开发中的关键作用及最佳实践
- 12-18PHP开发新手必学:构建网站的核心技巧
- 12-18优化你的PHP开发体验:工具配置全攻略
- 12-18PHP在网站开发中的实际应用案例解析
- 12-18PHP开发进阶教程:打造高效能网站
- 12-18深入了解PHP:Web开发的必备技能
- 12-18PHP开发详解:数据库与网站的完美结合
- 12-18PHP开发工具配置详解:提升开发效率的关键
- 12-18PHP开发者必备技能:高效错误处理和异常处理实战指南