0

0

PHP Redis操作基础教程_PHP通过Redis存取数据示例

舞夢輝影

舞夢輝影

发布时间:2025-12-17 22:24:37

|

703人浏览过

|

来源于php中文网

原创

PHP通过Redis存取数据需先安装phpredis扩展,连接时推荐设置超时与自动重连,支持String和Hash类型操作,String适用于缓存、计数器,Hash适合结构化存储如用户信息,所有key建议加统一前缀并设过期时间。

php redis操作基础教程_php通过redis存取数据示例

PHP 通过 Redis 存取数据非常简单,前提是已安装并启用 phpredis 扩展(非 Redis 命令行客户端)。下面以最常用、最实用的方式,带你快速上手。

连接 Redis 服务器

使用 Redis 类实例化连接,支持 TCP 和 Unix Socket。推荐设置超时和自动重连:

  • 默认端口是 6379,本地连接可省略 host 和 port
  • 建议开启 setOption(REDIS_OPT_READ_TIMEOUT, 3) 避免阻塞
  • 连接失败需手动捕获异常,不能依赖返回值判断

示例代码:

$redis = new Redis();
try {
    $redis->connect('127.0.0.1', 6379, 2); // host, port, timeout(秒)
    $redis->setOption(Redis::OPT_READ_TIMEOUT, 3);
} catch (RedisException $e) {
    die("Redis 连接失败: " . $e->getMessage());
}

字符串类型(String)存取

这是最基础也最常用的类型,适合缓存单个值、计数器、Token 等。

立即学习PHP免费学习笔记(深入)”;

  • set($key, $value, [$timeout]):第三个参数可为整数(秒)或 \Redis::SETEX(带过期)
  • get($key):不存在返回 false,注意用 === false 判断
  • incr($key) / decr($key):原子自增/自减,键不存在则初始化为 0 再操作

示例:

序列猴子开放平台
序列猴子开放平台

具有长序列、多模态、单模型、大数据等特点的超大规模语言模型

下载
// 存用户登录态(30分钟过期)
$redis->setex('user:token:abc123', 1800, 'uid:789');

// 取值并判断
$value = $redis->get('user:token:abc123');
if ($value === false) {
    echo "键不存在或已过期";
}

// 计数器(如文章阅读量)
$redis->incr('article:views:1001'); // 自动创建并+1

哈希类型(Hash)结构化存储

适合对象属性存取,比如用户资料、配置项,比存 JSON 字符串更灵活高效。

  • hSet($key, $field, $value):存单个字段;hMset($key, $array) 批量存
  • hGet($key, $field) 获取字段值;hGetAll($key) 获取全部字段(返回关联数组)
  • hExists($key, $field) 判断字段是否存在,比 hGet + === false 更语义清晰

示例:

// 存用户信息(不序列化,直接字段映射)
$redis->hMset('user:1001', [
    'name' => '张三',
    'email' => 'zhang@example.com',
    'status' => 'active'
]);

// 取邮箱
$email = $redis->hGet('user:1001', 'email');

// 检查是否启用
if ($redis->hExists('user:1001', 'status') && $redis->hGet('user:1001', 'status') === 'active') {
    echo "用户可用";
}

其他常用操作提醒

实际开发中容易忽略但很关键的点:

  • 所有 key 建议加统一前缀(如 cache:user:),便于管理与清理
  • 批量操作优先用 mGet / mSet / hMget,减少网络往返
  • 删除用 del($key),清空库用 flushDB()(慎用!)
  • 调试时可用 $redis->getKeys('user:*') 查匹配 key(生产环境禁用)

基本上就这些。不复杂但容易忽略细节,连上、存对、取准、加前缀、设过期——跑起来就稳了。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
json数据格式
json数据格式

JSON是一种轻量级的数据交换格式。本专题为大家带来json数据格式相关文章,帮助大家解决问题。

425

2023.08.07

json是什么
json是什么

JSON是一种轻量级的数据交换格式,具有简洁、易读、跨平台和语言的特点,JSON数据是通过键值对的方式进行组织,其中键是字符串,值可以是字符串、数值、布尔值、数组、对象或者null,在Web开发、数据交换和配置文件等方面得到广泛应用。本专题为大家提供json相关的文章、下载、课程内容,供大家免费下载体验。

538

2023.08.23

jquery怎么操作json
jquery怎么操作json

操作的方法有:1、“$.parseJSON(jsonString)”2、“$.getJSON(url, data, success)”;3、“$.each(obj, callback)”;4、“$.ajax()”。更多jquery怎么操作json的详细内容,可以访问本专题下面的文章。

313

2023.10.13

go语言处理json数据方法
go语言处理json数据方法

本专题整合了go语言中处理json数据方法,阅读专题下面的文章了解更多详细内容。

78

2025.09.10

string转int
string转int

在编程中,我们经常会遇到需要将字符串(str)转换为整数(int)的情况。这可能是因为我们需要对字符串进行数值计算,或者需要将用户输入的字符串转换为整数进行处理。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

543

2023.08.02

登录token无效
登录token无效

登录token无效解决方法:1、检查token的有效期限,如果token已经过期,需要重新获取一个新的token;2、检查token的签名,如果签名不正确,需要重新获取一个新的token;3、检查密钥的正确性,如果密钥不正确,需要重新获取一个新的token;4、使用HTTPS协议传输token,建议使用HTTPS协议进行传输 ;5、使用双因素认证,双因素认证可以提高账户的安全性。

6271

2023.09.14

登录token无效怎么办
登录token无效怎么办

登录token无效的解决办法有检查Token是否过期、检查Token是否正确、检查Token是否被篡改、检查Token是否与用户匹配、清除缓存或Cookie、检查网络连接和服务器状态、重新登录或请求新的Token、联系技术支持或开发人员等。本专题为大家提供token相关的文章、下载、课程内容,供大家免费下载体验。

825

2023.09.14

token怎么获取
token怎么获取

获取token值的方法:1、小程序调用“wx.login()”获取 临时登录凭证code,并回传到开发者服务器;2、开发者服务器以code换取,用户唯一标识openid和会话密钥“session_key”。想了解更详细的内容,可以阅读本专题下面的文章。

1073

2023.12.21

全国统一发票查询平台入口合集
全国统一发票查询平台入口合集

本专题整合了全国统一发票查询入口地址合集,阅读专题下面的文章了解更多详细入口。

19

2026.02.03

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PHP课程
PHP课程

共137课时 | 11万人学习

JavaScript ES5基础线上课程教学
JavaScript ES5基础线上课程教学

共6课时 | 11.2万人学习

PHP新手语法线上课程教学
PHP新手语法线上课程教学

共13课时 | 0.9万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号