库TP5构建轻量级应用Redis类库实现指南(tp5 redis 类)
ThinkPHP5被大多数PHP应用程序开发者誉为轻量级框架,他是一个简单高效的框架,易于构建快速,重量级的web应用。在现代开发中,大多数应用程序使用 cache 来提升其性能;而 redis 是目前最普遍且最方便使用的内存数据存储系统,支持数据库,缓存,消息总线等多种功能。本文将向你展示如何使用ThinkPHP5的Redis类库来构建轻量级的web应用。
我们需要安装一个redis系统,在Windows系统和Linux系统中安装步骤也大同小异,可以参考相关文档来完成安装。
安装完成之后,我们来配置ThinkPHP5的Redis类库:
在ThinkPHP5中,Redis类库默认位于/thinkphp/library/think/cache/driver下,找到Redis.php,编辑文件,填写相应的Redis服务器端口号,并设置服务器密码,例如:
“`php
/**
* 架构函数
* @param array $options 缓存参数
* @access public
*/
public function __construct($options=[]) {
if ( !extension_loaded(‘redis’) ) {
throw new \BadFunctionCallException(‘not support: redis’);
}
if(!empty($options)) {
$this->options = $options;
}
$this->handler = new \Redis;
$func = $this->options[‘persistent’] ? ‘pconnect’ : ‘connect’;
$this->handler->$func($this->options[‘host’], $this->options[‘port’], $this->options[‘timeout’]);
if (” != $this->options[‘password’]) {
$this->handler->auth($this->options[‘password’]);
}
}
这里,host字段填写安装Redis服务器IP,端口号填写服务器端口号,密码需要输入我们安装Redis服务器设置的密码,设置完成后保存即可。
来实现我们轻量级应用的Redis类库,我们可以采用LogicController类,创建一个LogicController文件,并在此文件中定义Redis缓存函数redis_cache,并添加接收的参数$key和$value,下面的代码实现了缓存的保存和获取及删除功能:
```php public function redis_cache($key,$value)
{ if(!$key) return 'please give me the key';
if($value) {
// put value $res = $this->hander->set($key,$value);
} else
{ // get value
$res = $this->hander->get($key);
// delete value $this->hander->del($key);
} return $res;
}
我们可以根据自己的需求,可以自定义redis_cache函数,来实现Redis缓存功能。
通过以上介绍,我们看到使用ThinkPHP5的Redis类库方便,实现轻量级应用也非常容易,把以上能优化及提升应用性能。