2

我想用 php 设置一个简单的缓存功能。我希望脚本从某个地方获取数据,但不是在每个页面视图中都执行此操作,而是每小时执行一次。

我知道我可以有一个每小时运行一个 php 脚本的 cron 作业。

但我想知道这是否可以在没有 cron 的情况下实现,就在基于获取(或缓存)的数据创建页面的 php 脚本中。我真的在寻找最简单的解决方案。不一定要准确

4

2 回答 2

3

我也会使用 APC,但无论哪种情况,您仍然需要一些逻辑。PHP中的基本文件缓存:

if (file_exists($cache_file) and time() - filemtime($cache_file) < 3600)
{
    $content = unserialize(file_get_contents($cache_file));
}
else
{
    $content = your_get_content_function_here();
    file_put_contents($cache_file, serialize($content));
}

如果 $content 不是字符串(例如数组或对象),您只需要序列化/反序列化。

于 2012-06-11T11:03:36.710 回答
1

为什么不使用 APC ?
你可以做

apc_store('yourkey','yourvalue',3600);

然后您可以使用以下方法检索内容:

apc_fetch();

于 2012-06-11T10:48:13.457 回答