当前位置: 首页 > news >正文

PHP与Redis缓存集成完整方案

PHP与Redis缓存集成完整方案

Redis在PHP项目里太常用了。缓存、队列、计数器、排行榜都用得上。今天说说PHP操作Redis的各种用法。

Redis的基本操作很简单,set和get存取值。

```php
$redis = new Redis();
$redis->connect('127.0.0.1', 6379);

$redis->set('name', '张三');
echo $redis->get('name') . "\n";

$redis->setex('session:123', 3600, 'user_data');
$redis->mset(['k1' => 'v1', 'k2' => 'v2']);
$values = $redis->mget(['k1', 'k2']);
print_r($values);
?>
```

List结构可以用作队列。

```php
$redis->del('queue');

$redis->lPush('queue', '任务C');
$redis->lPush('queue', '任务B');
$redis->lPush('queue', '任务A');

while ($task = $redis->rPop('queue')) {
echo "处理: $task\n";
}

$redis->lPush('queue', 'task1', 'task2', 'task3');
echo "队列长度: " . $redis->lLen('queue') . "\n";
echo "范围: ";
print_r($redis->lRange('queue', 0, -1));
?>
```

Hash适合存储对象类型的数据。

```php
$redis->hSet('user:1001', 'name', '张三');
$redis->hSet('user:1001', 'age', 28);
$redis->hSet('user:1001', 'email', 'zhangsan@test.com');

echo "姓名: " . $redis->hGet('user:1001', 'name') . "\n";
$user = $redis->hGetAll('user:1001');
print_r($user);

$redis->hMSet('user:1002', ['name' => '李四', 'age' => 35]);
echo "字段存在: " . ($redis->hExists('user:1002', 'name') ? '是' : '否') . "\n";
?>
```

Set适合做集合运算。

```php
$redis->sAdd('user:1:tags', 'PHP', 'JavaScript', 'MySQL');
$redis->sAdd('user:2:tags', 'PHP', 'Python', 'Docker');

$common = $redis->sInter('user:1:tags', 'user:2:tags');
echo "共同标签: " . implode(', ', $common) . "\n";

$all = $redis->sUnion('user:1:tags', 'user:2:tags');
echo "所有标签: " . implode(', ', $all) . "\n";
?>
```

Sorted Set适合排行榜。

```php
$redis->zAdd('leaderboard', 9500, '张三');
$redis->zAdd('leaderboard', 8800, '李四');
$redis->zAdd('leaderboard', 9900, '王五');

$top3 = $redis->zRevRange('leaderboard', 0, 2, true);
echo "排行榜前三:\n";
foreach ($top3 as $player => $score) {
echo " $player: $score分\n";
}

$rank = $redis->zRevRank('leaderboard', '李四');
echo "李四排名: 第" . ($rank + 1) . "名\n";
?>
```

Redis的过期时间管理也很重要。EXPIRE设置过期时间,TTL查看剩余时间。合理设置过期时间可以避免内存堆积。

Redis在项目中的常见用法包括缓存数据库查询结果、Session存储、计数器、排行榜、消息队列、分布式锁等。用好Redis能显著提升应用性能。

http://www.zskr.cn/news/1473239.html

相关文章:

  • 潍坊圣宝利农业科技:单拱/玻璃/薄膜连栋温室大棚建设实力厂家推荐 - 品牌推荐官
  • 杭州特色糕点推荐:杨先生糕点,非遗匠心铸就江南地道风味 - 玖叁鹿
  • 迪庆宝珀+宝玑+伯爵手表专业回收,26年精选回收店铺排行榜推荐 - 莘州文化
  • 2026沈阳城市建设学院多少分能上?录取线怎么样,高吗? - 品牌2026
  • 调查研究-159 Apple WWDC 2026 定档 6/8-12:Siri 与 AI 升级,可能是苹果最关键的一次
  • 002:安装与登录全平台实战——Node.js 环境、认证配置与常见故障排查
  • 微型移动终端设计:极限体积下的蜂窝通信与低功耗实现
  • Python气温预测全流程:爬虫抓数据、LSTM建模、可视化出图一键跑通
  • Python实战:用遗传算法搞定外卖骑手路径规划(附完整代码)
  • 2026年电动平车出口厂家推荐:山东三羊起重机械10吨/5吨无轨及低压轨道车供应 - 品牌推荐官
  • 3步拯救机械键盘:告别连击困扰的智能解决方案
  • 线材摇摆测试:从原理到实战,提升连接器可靠性的设计指南
  • 二极管热设计:从静态降额到电热耦合迭代模型的精确计算
  • 2025年彩钢琉璃瓦设备厂家推荐:泊头兴和机械琉璃瓦成型机全系供应 - 品牌推荐官
  • 私有化本地 AI,Windows 平台 OpenClaw 功能详解与配置
  • 电子工程师职业发展:技术专家与管理路径的深度解析与选择策略
  • 2026年工业测控仪表推荐:上海肯阔科技在线密度计等全系测控产品解决方案 - 品牌推荐官
  • 基于极化鲁棒阵列的稳健DOA估计:C-MUSIC与闭式算法详解
  • QQ音乐加密文件转换神器:qmc-decoder让你的音乐自由播放
  • 2026精选:北京活动搭建与舞美设计服务公司实力观察 - 品牌企业推荐师(官方)
  • 广东鸿胜金属设备回收:专业的汕头废旧金属回收公司 - LYL仔仔
  • TranslucentTB完整指南:让你的Windows任务栏瞬间变透明✨
  • 上海除甲醛公司实地调研:甄选标准与全国直营品牌发展剖析 - 速递信息
  • PHPWeb安全通用防护策略
  • 2026 东莞奢侈品全品类避坑攻略,6 家门店行情实测,一站式变现指南 - 薛定谔的梨花猫
  • ArchivePasswordTestTool:免费开源的压缩包密码恢复终极指南
  • HarmonyOS分布式开发实战:跨设备亲子涂鸦应用架构与实现
  • 2026年ESD防静电闸机厂家推荐:苏州捷德全系产品助力智能制造安全管控 - 品牌推荐官
  • 2026杭州新中式别墅灯光设计要点:从光线层次到柜体发光,这些细节藏着空间的气质 - 十大品牌排行榜
  • Speechless:3分钟学会微博PDF备份,永久保存你的社交记忆