PHP安装redis,在tp5中使用

参考网上教程的安装流程:

参考网址:

https://blog.csdn.net/sinat_15955423/article/details/78920489

https://blog.csdn.net/qq_39188306/article/details/84451377

  1. 安装redis: Redis-x64-3.2.100.zip解压,在C盘根目录新建一个叫redis的文件夹,把刚才解压的文件直接复制粘贴进去。网上下载地址:https://download.csdn.net/download/sinat_15955423/10827470
  2. 启动redis:win+R快捷键输入cmd进入命令框,先到c盘根目录再到C盘的redis文件夹,然后输入redis-server.exe redis.windows.conf 即可运行redis,(或者双击压缩包里的startredis.bat脚本)PHP安装redis,在tp5中使用_第1张图片
  3. 安装redis扩展:根据你用的PHP版本选择对应的解压包php_redis-2.2.7-5.5-ts-vc11-x86,将下载解压后的php_redis.dll放入php的ext目录下(如我的是:E:\phpStudy\php\php-5.5.38\ext  X86的扩展)

    4.然后修改php.ini,加入redis扩展配置:

    extension=php_igbinary.dll
    extension=php_redis.dll

    注意:extension=php_igbinary.dll一定要放在extension=php_redis.dll的前面,否则此扩展不会生效

    重启环境,运行一下phpinfo.php

  4. PHP安装redis,在tp5中使用_第2张图片

  5. 可安装管理工具,安装redis-desktop-manager-0.8.8.384.exe,安装之后进行连接PHP安装redis,在tp5中使用_第3张图片

  6. Tp5测试,在extend文件夹下新建一个redis文件夹,并创一个RedisPackage.php的类              PHP安装redis,在tp5中使用_第4张图片
  7. 封装redis类,这是一个封装好了的redis类
    
    // +----------------------------------------------------------------------
    
    namespace Redis;
    
    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);
        }
    
    
    }
    
    ?>

     

  8. 创建控制器,写个方法,测试

    浏览器中进行访问PHP安装redis,在tp5中使用_第5张图片                                                                                                        可视化工具中也能看到PHP安装redis,在tp5中使用_第6张图片

  9. 问题:                                                                                                                                                                               Redis server went away   服务没开启,找到redis中redis-server.exe,双击开启服务

  10. 问题:                                                                                                                                                                            windows下设置redis开机自启动,避免窗口一关闭,redis服务就停止的问题,所以要把redis设置成windows下的服务:     cmd进入redis文件夹下,输入命令: redis-server --service-install redis.windows-service.conf --loglevel verbose             PHP安装redis,在tp5中使用_第7张图片                                                                   输入命令之后没有报错,表示成功了,刷新服务,会看到多了一个redis服务。 PHP安装redis,在tp5中使用_第8张图片                                                                            常用的redis服务命令:                                                                                                                                                          卸载服务:redis-server --service-uninstall                                                                                                                             开启服务:redis-server --service-start                                                                                                                                    停止服务:redis-server --service-stop                                                                                                                                                             

你可能感兴趣的:(PHP安装redis,在tp5中使用)