是否有可在PHP中的任何位置访问的变量范围?

时间:2010-09-06 20:53:04

标签: php variables scope

我想创建一个非常基本的聊天应用程序。我不想使用数据库,因为它会对已经紧张的数据库造成沉重的负担。我也不想使用平面文件,因为它感觉它变得一团糟或者它会有很多读/写... 所以,我想知道是否有办法在任何文件中随时都可以访问变量。

3 个答案:

答案 0 :(得分:2)

如果您不想要文件,那么您将留下共享内存。

您可以尝试使用PHP shared memory functions,或使用memcacheAPC等扩展程序。

答案 1 :(得分:1)

您不能在不同的请求中共享变量值 - 即使每次都有多个请求发生,也要考虑每个请求,例如整个程序每次都在开始和结束。

您可以考虑将数据存储在缓存层中(例如,memcached),但是如果数据库负载过重,则需要缓存数据库。我建议缓存你的数据库(再次是memcached或基于文件的存储;首先是serialize()数据),然后当问题解决时,将聊天数据存储在数据库中(然后缓存)。你需要在某个地方持久存储它。

答案 2 :(得分:0)

没有这样的事情。尝试创建一个基本文件,保存所需变量的serialized / json'd版本,使用php's flock管理对该文件的访问,每小时/每天循环一次。由于它不是一个大流量简单的应用程序,我认为这将是好的。