阅读量:0
now()
函数在 PHP 中用于获取当前的日期和时间。在缓存失效的应用场景中,我们可以利用 now()
函数来设置缓存的有效期,以确保缓存数据不会过期。
以下是一个简单的示例,说明如何在缓存失效中使用 now()
函数:
<?php // 连接到缓存服务器(例如 Redis) $cache = new Redis(); $cache->connect('127.0.0.1', 6379); // 设置缓存键值对 $cacheKey = 'my_data'; $data = [ 'key1' => 'value1', 'key2' => 'value2', ]; $cache->set($cacheKey, json_encode($data)); // 设置缓存有效期,这里我们使用 now() 函数来获取当前时间戳,并加上 3600 秒(1小时)作为有效期 $expirationTime = time() + 3600; $cache->expire($cacheKey, $expirationTime); // 检查缓存是否有效 if ($cache->exists($cacheKey)) { // 如果缓存有效,则从缓存中获取数据并解码 $decodedData = json_decode($cache->get($cacheKey), true); echo "缓存有效,数据:\n"; print_r($decodedData); } else { // 如果缓存无效,则从数据库或其他数据源获取数据 echo "缓存无效,从数据库或其他数据源获取数据。\n"; // 在这里执行从数据库或其他数据源获取数据的操作 } ?>
在这个示例中,我们首先连接到缓存服务器(这里使用的是 Redis),然后设置一个缓存键值对。接着,我们使用 now()
函数来计算缓存的有效期,并将其设置为当前时间戳加上 3600 秒(1小时)。最后,我们检查缓存是否有效,如果有效则从缓存中获取数据,否则从数据库或其他数据源获取数据。