2011-03-11 63 views
2

我有一个大的数据库,我从那里获取数据并存储在一个数组中。我正在处理这些数据,但我不想每次都从数据库中获取这些数据,我想缓存它,这对我来说每5分钟就足够了。我怎么能缓存一个数组?Php阵列缓存

感谢您的帮助。

+0

你说数据库,但你的标签没有指定一个。如果是MySQL - 有[SELECT SQL_CACHE](http://dev.mysql.com/doc/refman/5.1/en/query-cache-in-select.html)模式 – Mikhail 2011-03-11 14:39:43

+0

您对PHP数组缓存有疑问?在你的细节中,你正在谈论数据库缓存。你可以提供更多的细节? – kn3l 2011-03-11 14:53:09

回答

2

只要你可以安装APC缓存。 它使用服务器的内部存储器。

后可以设置阵列apc_store('key_name', serialize($array))并用apc_fetch('key_name')

取用户还可以定义过期时间缓存。

它非常容易和快速。

+0

哪一个更好?替代PHP缓存和Memcache? – kn3l 2011-03-11 14:42:10

+1

Memcache可以在服务器之间分配。但它需要更多的依赖性,并且它通过TCP端口工作。这意味着你有额外的TCP开销。 APC不能分配,但不使用TCP,也不具有任何依赖性。 – osm 2011-03-11 14:45:49

+0

这看起来非常好,你能在这里写出一个取决于时间的例子(1 min缓存时间)。谢谢。 – 2011-03-11 15:24:09