沃梦达 / 编程问答 / php问题 / 正文

使用PHP缓存MySQL查询结果的最简单方法?

The most simple way to cache MySQL query results using PHP?(使用PHP缓存MySQL查询结果的最简单方法?)

本文介绍了使用PHP缓存MySQL查询结果的最简单方法?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

每次有人登陆我的页面 list.php?id=xxxxx 它都会重新查询一些 MySQL 查询以返回:

Each time someone lands in my page list.php?id=xxxxx it requeries some MySQL queries to return this:

$ids = array(..,..,..); // not big array - not longer then 50 number records
$thumbs = array(..,..,..); // not big array - not longer then 50 text records
$artdesc = "some text not very long"; // text field

因为我从中进行查询的数据库非常大,所以我想将此结果缓存 24 小时,例如:xxxxx.php 在/cache/目录中,以便我可以使用如果它存在,它在 include("xxxxx.php") 中.(或txt文件!?,或任何其他方式)

Because the database from which I make the queries is quite big I would like to cache this results for 24h in maybe a file like: xxxxx.php in a /cache/ directory so i can use it in include("xxxxx.php") if it is present. ( or txt files !? , or any other way )

因为有非常简单的数据,我相信它可以使用几行 PHP 代码来完成,不需要使用 memcached 或其他专业对象.

Because there is very simple data I believe it can be done using a few of PHP lines and no need to use memcached or other professional objects.

因为我的 PHP 非常有限,有人可以为此任务放置 PHP 主线(或代码)吗?

Becasuse my PHP is very limited can someone just place the PHP main lines ( or code ) for this task ?

我真的会很感激!

推荐答案

缓存 PHP 数组非常简单:

Caching a PHP array is pretty easy:

file_put_contents($path, '<?php return '.var_export($my_array,true).';?>');

然后你可以把它读出来:

Then you can read it back out:

if (file_exists($path)) $my_array = include($path);

您可能还想查看提供缓存的 ADOdb内部.

这篇关于使用PHP缓存MySQL查询结果的最简单方法?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:使用PHP缓存MySQL查询结果的最简单方法?

基础教程推荐