php+redis判断缓存中是否为空
时间: 2023-05-18 08:04:54 浏览: 186
可以使用 Redis 的 EXISTS 命令来判断缓存中是否存在某个键,如果返回值为 1 则表示存在,为 0 则表示不存在。具体代码如下:
$redis = new Redis();
$redis->connect('127.0.0.1', 6379);
if ($redis->exists('key')) {
echo '缓存中存在该键';
} else {
echo '缓存中不存在该键';
}
相关问题
php+redis判断redis缓存里面是否有数据
可以使用 Redis 的 EXISTS 命令来判断 Redis 缓存中是否存在某个键值对。具体实现可以参考以下代码:
$redis = new Redis();
$redis->connect('127.0.0.1', 6379);
if ($redis->exists('key')) {
echo 'Redis 缓存中存在该键值对';
} else {
echo 'Redis 缓存中不存在该键值对';
}
怎么把静态资源缓存到redis中,php实现下.
可以使用Redis作为缓存服务器,在PHP中使用Redis扩展提供的函数来将静态资源缓存到Redis中。具体实现步骤如下:
1.连接Redis服务器:
使用Redis扩展提供的`redis_connect()`函数连接Redis服务器。
2.判断缓存是否存在:
使用Redis扩展提供的`redis_get()`函数判断静态资源是否已经缓存在Redis中,如果已经存在则直接返回该资源,否则继续执行下一步。
3.读取静态资源:
使用PHP的文件操作函数(`fread()`,`file_get_conents()`等)读取静态资源,并将其内容存储到字符串变量中。
4.将资源缓存到Redis中:
使用Redis扩展提供的`redis_set()`函数将静态资源存储到Redis中,并指定相应的过期时间。
完整代码如下:
```
<?php
//连接Redis服务器
$redis = new Redis();
$redis->connect('127.0.0.1', 6379);
//静态资源URL
$url = 'http://example.com/static/test.jpg';
//判断缓存是否存在
$res = $redis->get($url);
if(!$res) {
//读取静态资源
$content = file_get_contents($url);
//将资源缓存到Redis中
$redis->set($url, $content, 'EX', 3600);
//输出资源
echo $content;
}
else {
//输出缓存中的资源
echo $res;
}
```
注意:在实际使用中要替换静态资源的URL和Redis服务器的IP、端口等参数。
阅读全文