首页 MySql php – fetch当我从缓存中获取它时只返回一行

php – fetch当我从缓存中获取它时只返回一行

我正在尝试采用缓存类在我的网页上使用.简单的逻辑是这样的:尝试从缓存中获取数据:如果没有:运行查询并将其设置为缓存.如果有:显示来自缓存的数据.我的代码?php // Require Library require_once(phpfastcache.php); $cache = phpFastCache(); //lets g

我正在尝试采用缓存类在我的网页上使用.

简单的逻辑是这样的:

尝试从缓存中获取数据:

>如果没有:运行查询并将其设置为缓存.
>如果有:显示来自缓存的数据.

我的代码

我的输出和问题

我有两排.

当我从查询中获取它们时,我的代码输出它们.这很好.

row1
row2

但是当页面从缓存中将它带给我时,它只输出最后一行.

row2

我试过的

我尝试使用fetchAll()函数而不是fetch()但这次我收到通知:未定义索引:id错误.

所以我被困住了,需要你的帮助.

最佳答案
如果一次为所有记录,请使用fetchAll

$r = $cache->get("cachethis");

if(!is_array($r)) {
    // not in cache,from db
    $query = $handler->query("SELECT * FROM members");
    $r = $query->fetchAll(PDO::FETCH_ASSOC);
    $cache->set("cachethis",10);
}

foreach($r as $v) echo $v['id']."

本文来自网络,不代表青岛站长网立场。转载请注明出处: https://www.0532zz.com/html/shujuku/mysql/20201118/12584.html
上一篇
下一篇

作者: dawei

【声明】:青岛站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。

为您推荐

【免责声明】本站内容转载自互联网,其发布内容言论不代表本站观点,如果其链接、内容的侵犯您的权益,烦请提交相关链接至邮箱xwei067@foxmail.com我们将及时予以处理。

Copygight © 2016-2023 https://www.0532zz.com All Rights Reserved.青岛站长网

站长:xwei067#foxmail.com(请把#换成@)