memcached的php问题

时间:2018-03-08 11:40:11

标签: php mysql memcached

我正在尝试使用memcached缓存我网站上一些最常用的查询。问题是,它一直返回NULL。

这里有一些代码;

$get_announcements = core::$mem->get('index_announcements');
if ($get_announcements === false) // there's no cache
{
    $get_announcements = $dbl->run("SELECT `id`, `text`, `user_groups`, `type`, `modules`, `can_dismiss` FROM `announcements` ORDER BY `id` DESC")->fetch_all();
    core::$mem->set('index_announcements', $get_announcements, 600);
}

所以我抓住了密钥,然后检查它是否已设置,如果没有,那么从数据库中取出并设置它。

问题是,它似乎工作了一段时间,但是当我通过执行检查时最终只返回NULL:

var_dump(core::$mem->get('index_announcements'));

似乎关键是实际设置,但它的内容是空的?这是如何在memcached中正常到期的吗?我真的很困惑。

0 个答案:

没有答案