Redis PHP配置

随着今年无数网红的出现,各种小视频直播平台如雨后春笋搬出现,像抖音,快手等,市场简直火爆的,大江南北男女老少都在玩,作者都想转行去当个主播火一把,然鹅,不能靠脸吃饭,所以还得日夜加班踏踏实实写代码分享给大家。这不,近期就接到一个客户的直播+小视频项目。该项目用php开发的,项目中有一处new Redis() 代码,每次执行到这里都会抛出这个异常Class 'Redis' not found,但是本地安装的redis服务测试都是好着的,这个问题让作者费了不少心思,深入探究,反复验证,终于把这个问题解决了,想必也有其他开发者朋友遇到过这个问题,今天作者就把解决过程整理一下分享出来。

本案例先决条件:为php7.2搭建redis扩展的前提是在本机上已经成功搭建好php的运行环境,笔者的电脑安装的php的软件是xampp,(其他的软件Wamp也类似)集成环境是apache2.4+mysql5.1+php7.2,操作系统为Win10 系统64位。

一、下载安装Redis
1、下载Redis-x64-3.2.100.msi,然后双击软件安装到想要安装的盘符下,我这里是安装目录是D:\Program Files\Redis

2、安装目录找到redis.windows.conf文件,然后设置密码

3、开启redis服务
在命令行窗口切换到redis的安装目录,在窗口中输入命令redis-server redis.windows.conf 回车出现下面界面则reids服务安装成功且成功启动:

二、安装php的redis扩展
1、查看扩展版本

使用phpinfo()函数查看PHP的版本信息和php软件位数(32位还是64位软件)和编译环境。这会决定redis扩展文件版本。

版本一定要对应看是TS还是nts,是VC11还是VC12还是其他版本号,不一致的版本驱动文件不会生效,代码中一直会抛异常Class 'Redis' not found,笔者最开始也是经历了这个坑。看清楚我的php是32位的(备注:64位操作系统安装的32位的php),编译环境是MSVC15(VisualC++2017) ,扩展版本是TS,VC15

 
  1.  
  2. TS指Thread Safety,即线程安全,一般在IIS以ISAPI方式加载的时候选择这个版本。

  3. NTS即None-Thread Safe,一般以fast cgi方式运行的时候选择这个版本,具有更好的性能。

TS指Thread Safety,即线程安全,一般在IIS以ISAPI方式加载的时候选择这个版本。
NTS即None-Thread Safe,一般以fast cgi方式运行的时候选择这个版本,具有更好的性能。
2、下载驱动文件igbinaryredis

igbinary下载地址  https://windows.php.net/downloads/pecl/releases/igbinary/

redis     下载地址  https://windows.php.net/downloads/pecl/releases/redis/3.1.4/

根据php的版本信息下载对应的redis驱动文件,我的php版本是7.2的,php扩展版本是TS,VC15

3、拷贝4个扩展驱动文件

将上面四个文件拷贝到php目录下的ext目录下,我这里的目录是D:\XAMPP\path\php\ext

4、修改配置文件php.ini

D:\XAMPP\path\php\php.ini文件末尾(任意位置都可以)添加如下内容,支持扩展

 
  1. ;php_redis

  2. extension=php_igbinary.dll

  3. extension=php_redis.dll


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

5、重启服务器Apache

这里Apache的集成环境是xampp,浏览器打开phpinfo(),看到redis扩展安装成功。

6、验证扩展是否可用

打开redis服务后,可以用如下方式测试是否能够调用。
 

 
  1. <?php

  2. //实例化Redis类

  3. $redis = new Redis();

  4. //选择指定的redis数据库连接,默认端口号为6379

  5. $redis->connect('127.0.0.1', 6379);

  6. //指定前面设置的密码

  7. $redis->auth('123456');

  8. echo "Connection to server sucessfully";

  9. //设置 redis 字符串数据

  10. $redis->set("tutorial-name", "Redis tutorial");

  11. // 获取存储的数据并输出

  12. echo "Stored string in redis:: " . $redis->get("tutorial-name");

  13. ?>

现在代码里面redis服务可用了,不会再报Class 'Redis' not found错了,到此Windows10系统 64位安装php的redis扩展安装成功。文末再次提醒大家,一定要根据php的版本信息和位数(32位还是64位)下载对应版本的扩展驱动文件,否则不生效

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值