需安装Redis扩展或Predis库,配置连接参数后建立连接并验证,再执行字符串缓存(如setex、get、incr)和哈希操作(如hMset、hGet、hMget)。

如果您在PHP项目中需要与Redis数据库建立连接并执行缓存操作,则需确保PHP环境已安装Redis扩展,并正确配置连接参数。以下是实现PHP连接Redis并进行基础缓存操作的具体步骤:
一、安装并启用Redis扩展
PHP原生不支持Redis,必须通过安装phpredis扩展来提供客户端功能。该扩展提供面向对象接口,是目前最常用且稳定的Redis PHP客户端。
1、确认PHP版本及架构(如PHP 8.1、x64线程安全TS),前往PECL Redis下载页获取对应版本的php_redis.dll文件。
2、将下载的php_redis.dll复制到PHP的ext目录下(例如:C:\php\ext\php_redis.dll)。
立即学习“PHP免费学习笔记(深入)”;
3、编辑php.ini文件,在扩展列表末尾添加:extension=php_redis.dll。
4、重启Web服务器(如Apache或Nginx)后,运行phpinfo(),检查是否出现Redis模块信息区块。
二、使用Predis库(无需编译扩展)
Predis是一个纯PHP实现的Redis客户端,适用于无法安装C扩展的共享主机或容器化环境,兼容Redis 2.6+所有命令。
1、通过Composer安装Predis:composer require predis/predis。
2、在PHP脚本中引入自动加载器:require 'vendor/autoload.php';。
3、实例化客户端对象时可传入连接配置数组,例如指定主机、端口、密码和超时时间。
三、建立基础连接并验证连通性
无论采用phpredis还是Predis,首次连接都应包含异常捕获机制,以识别网络不通、认证失败或服务未启动等常见问题。
1、使用phpredis创建连接:$redis = new Redis(); $redis->connect('127.0.0.1', 6379, 2.5);。
2、设置密码(若Redis启用了AUTH):$redis->auth('your_password');。
3、执行PING命令验证响应:if ($redis->ping() === '+PONG') { echo 'Connected successfully'; }。
四、执行字符串类型缓存操作
字符串(String)是最基础的Redis数据类型,适用于存储会话ID、Token、计数器等简单键值对。
1、设置带过期时间的缓存项:$redis->setex('user:token:abc123', 3600, 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9');。
2、获取缓存值:$token = $redis->get('user:token:abc123');。
3、递增计数器(如页面访问量):$redis->incr('page:views:home'); // 返回新值。
五、操作哈希(Hash)结构存储对象数据
哈希类型适合保存具有多个字段的对象,例如用户资料,相比JSON序列化字符串更节省内存且支持字段级读写。
1、写入用户信息字段:$redis->hMset('user:1001', ['name' => 'Alice', 'age' => '28', 'city' => 'Beijing']);。
2、仅获取指定字段:$name = $redis->hGet('user:1001', 'name');。
3、批量获取多个字段:$fields = $redis->hMget('user:1001', ['name', 'city']);。











