最近做项目,需要用到redis相关知识。在Linux下,redis扩展安装起来很容易,但windows下还是会出问题的。因此,特此记下自己实践安装的整个过程,以方便后来人。
一,php中redis扩展安装配置
1, 首先第一点,也是最重要一点是,你要知道你的php版本信息,这会决定你的扩展文件版本。特别需要记住一点的是,redis选择x64或者x86,是以php版本的Architecture是x64或者x86决定的,跟windows操作系统无关的。本人使用的是xampp集成环境,使用phpinfo()函数将php版本信息打印出来的结果如下:
在这里,可以清楚的看到,architecture的结构为x86的,因此redis应该选择为x86的(这个也是本人刚开始死活安装不成功的原因)。OK,知道了php的版本信息后,我们就来下载对应的redis了。下载地址为:https://pecl.php.net/package/redis。
2 进入下载地址,可以看到关于redis版本的一些信息。对最新版本的redis有说明,两个beta版本和一个stable版本。在这里,我们使用stable版本。
由于本人的php版本为:php version 7.1.8,满足redis最新版本 的条件,因此选择redis的最新版本(根据自己的php version信息,选择适合自己的redis版本即可)。
点击进入DLL页面,可以看到该版本的redis信息。如果你嫌麻烦,可以直接跳到DLL List条目下:
在这里,有几种不同的选择的格式,如果你不知道该选择哪一款,可以看看上图1.首先php version是7.1.8,那么应该选择为PHP 7.1。其次,如图1中可以看到,PHP Extension Build为API20160303,TS,VC14,因此应该选择TS项。然后它的Architecture为x86,所以要选择为x86的格式。(尽管本人的windows为x64,但这个跟redis的版本选择没关系,所以不要被误导)。因此,下载7.1 Thread Safe (TS) x86这个版本
3 解压缩后,将php_redis.dll拷贝至php的ext目录下。有人说要将php_redis.pdb也拷贝到ext目录下,但是本人亲自实践过,只需要将php_redis.dll拷贝至php的ext目录下即可(这个也许是php版本的原因,大家要根据自己的实际情况,灵活处理)。
4 修改php.ini,在该文件中加入:
; php_redis
extension=php_redis.dll
在这里,本人的xampp安装在C盘下,因此php.ini的路径为:C:\xampp\php\php.ini。修改即可。
5 重启Apache,运行phpinfo()函数,搜索页面,可以看到redis扩展已经配置成功了。
二, windows系统中,安装redis的server和client
1 github网站上下载。下载地址为:https://github.com/dmajkic/redis/downloads
2 根据实际情况,将其安装(也就是根据实际情况,将对应的文件copy到自定义目录下)。例如本人的windows为64位,因此将64bit的内容拷贝到自定义目录C:\redis下。
3 打开cmd,cd c:\redis 切换到Redis-server.exe目录,运行redis-server.exe redis.conf;下图表示启动成功:
4 原有的窗口不要关闭(如果关闭,则访问不了redis服务器),另起一个窗口,切换到redis目录下运行 redis-cli.exe -h 127.0.0.1 -p 6379。如下图,可以看到redis-cli启动成功:
5 使用redis测试,结果证明成功:
三 在Thinkphp3.2中进行测试,此时,redis-server不能关闭,否则会出错。代码如下:
$redis = new \Redis();
$redis->connect(C('REDIS_HOST'), C('REDIS_PORT'));
$redis->set('myname', 'manu'); //设置值
$res = $redis->get('myname');
echo $res;
最后的输出结果为,说明redis的安装已成功。