php - 缓存不工作

标签 php mysql caching doctrine

我有以下功能,但它不是缓存。我有什么遗漏的吗?环境:Doctrine Common 和 DBAL、PHP、MySQL。我不应该将缓存 ID 设置为变量吗?

function getGeo($latitude, $longitude, $radius, $numResults, $volunteerPid, $startPosition, $pageSize)
    {
        $cacheDriver = new Doctrine\Common\Cache\ArrayCache();
        $geoQuery = $cacheDriver->fetch($volunteerPid);
        if ($geoQuery === false) {
            $geoQuery = $this->connection->prepare("call sproc_qryGeo($latitude, $longitude, $radius, $numResults, $volunteerPid, $startPosition, $pageSize)");
            $cacheDriver->save($volunteerPid, $geoQuery);
            echo "NOT CACHED";
        }
        return $geoQuery;
    }

最佳答案

来自 cache types definintions on Doctrine site ArrayCache 具有请求的生命周期。因此,重新加载页面后,您的缓存就会消失

所以,如果这是您的情况 - 考虑另一个缓存存储,Doctrine 支持其中的很多。

关于php - 缓存不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34771873/

相关文章:

ruby-on-rails - 如何清除 Rails Action 缓存? (Rails.cache.clear 不工作)

php - 像文件夹一样使用 tar.gz 文件?

php - 使用 echo 在 PHP 的 URL 中发送变量

MySQL 查找当月已过去的周数

php - 无法在 Windows LAMP 堆栈上访问 PHPMyAdmin

java - 为什么我收到此错误?HTTP 状态 500 - Servlet 执行引发异常?

php - file_exists() 在 PHP 中太慢了。任何人都可以提出更快的替代方案吗?

php - 如何使用 PHP 简单 DOM 在没有属性的情况下查找数据并从旁边的 html 表 td 元素中获取文本?

java - 使用 MyBatis 进行批量预缓存

c++ - 驱逐旧条目时引用线程安全缓存的设计选项