千家信息网

ThinkPHP5框架中怎么使用和封装Redis

发表于:2025-11-15 作者:千家信息网编辑
千家信息网最后更新 2025年11月15日,这篇文章主要介绍"ThinkPHP5框架中怎么使用和封装Redis",在日常操作中,相信很多人在ThinkPHP5框架中怎么使用和封装Redis问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作
千家信息网最后更新 2025年11月15日ThinkPHP5框架中怎么使用和封装Redis

这篇文章主要介绍"ThinkPHP5框架中怎么使用和封装Redis",在日常操作中,相信很多人在ThinkPHP5框架中怎么使用和封装Redis问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"ThinkPHP5框架中怎么使用和封装Redis"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

Redis是一种常用的非关系型数据库,主要用作数据缓存,数据保存形式为key-value,键值相互映射.它的数据存储跟MySQL不同,它数据存储在内存之中,所以数据读取相对而言很快,用来做高并发非常不错.

ThinkPhP5.0自带了Redis扩展,在使用之前先下载php_redis.dll 。根据自己windows操作系统选择相应的版本,我自己是系统64位,安装的是VC2012 所以下载的是php_redis-2.2.7-5.6-ts-vc11-x64.zip

下载好压缩包之后,把里面的php_redis.dll 解压到D:\wamp\bin\php\php5.6.25\ext (根据自己wamp所在的盘自己选择),然后在php.ini里面添加extension=php_redis.dll,重新启动apache就可以了;

下面是我自己测试的代码,可以使用,封装的不多,可以根据自己的需求去动手封装

extend 是thinkPHP5.0的扩展类库目录,可以自己去定义

namespace My;  //目录我放在thinkphp5.0/extend/My  class RedisPackage{    protected static $handler = null;    protected $options = [        'host' => '127.0.0.1',        'port' => 6379,        'password' => '',        'select' => 0,        'timeout' => 0,    //关闭时间 0:代表不关闭        'expire' => 0,        'persistent' => false,        'prefix' => '',    ];    public function __construct($options = [])    {        if (!extension_loaded('redis')) {   //判断是否有扩展(如果你的apache没reids扩展就会抛出这个异常)            throw new \BadFunctionCallException('not support: redis');              }        if (!empty($options)) {            $this->options = array_merge($this->options, $options);        }        $func = $this->options['persistent'] ? 'pconnect' : 'connect';     //判断是否长连接        self::$handler = new \Redis;        self::$handler->$func($this->options['host'], $this->options['port'], $this->options['timeout']);        if ('' != $this->options['password']) {            self::$handler->auth($this->options['password']);        }        if (0 != $this->options['select']) {            self::$handler->select($this->options['select']);        }    }    /**     * 写入缓存     * @param string $key 键名     * @param string $value 键值     * @param int $exprie 过期时间 0:永不过期     * @return bool     */    public static function set($key, $value, $exprie = 0)    {        if ($exprie == 0) {            $set = self::$handler->set($key, $value);        } else {            $set = self::$handler->setex($key, $exprie, $value);        }        return $set;    }    /**     * 读取缓存     * @param string $key 键值     * @return mixed     */    public static function get($key)    {        $fun = is_array($key) ? 'Mget' : 'get';        return self::$handler->{$fun}($key);    }    /**     * 获取值长度     * @param string $key     * @return int     */    public static function lLen($key)    {        return self::$handler->lLen($key);    }    /**     * 将一个或多个值插入到列表头部     * @param $key     * @param $value     * @return int     */    public static function LPush($key, $value, $value2 = null, $valueN = null)    {        return self::$handler->lPush($key, $value, $value2, $valueN);    }    /**     * 移出并获取列表的第一个元素     * @param string $key     * @return string     */    public static function lPop($key)    {        return self::$handler->lPop($key);    }}
namespace app\index\controller;use think\Controller;use My\RedisPackage;class Redis extends Controller{    function redis()    {        $redis=new RedisPackage();        $redis::set('dede','我就笑笑');        echo $redis::get('dede');    }}


到此,关于"ThinkPHP5框架中怎么使用和封装Redis"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

封装 数据 框架 学习 缓存 时间 更多 目录 系统 存储 帮助 选择 不同 不错 实用 接下来 操作系统 之中 代码 代表 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 搭建宝塔提示链接服务器失败 数据库安全 备份及事务 fico网络安全怎么样 衡阳市当地服务器 协多网络技术有限公司 周鸿祎谈网络安全动物奥特曼 zte服务器千兆管理口 自己搭建外网服务器 数据库原理及应用第四版全部答案 隐藏服务器ip地址 信令服务器开源项目 删除AIDATA数据库 广州华夏职业学院数据库试卷 杭州微客多网络技术有限公司 阿里巴巴软件开发公司开发什么 浙江程序软件开发价格 数据库技术及应用 清华 计算机网络技术应用前景研究论文 如何选择运营商登陆服务器 118.107.47 服务器 六安软件开发培训哪里有 TC简单软件开发运用 河北麻将软件开发性价比出众 局域网的网络安全吗 网络安全策略布控 汉危科技互联网应急管理 神泣工具怎么连接数据库 微信老出现会话数据库有损坏 绿色征途服务器列表载显示不了 服务器主板的外接接口网络电源
0