日期:2014-05-16  浏览次数:20484 次

关于PHP中的缓存
在PHP的项目中,我用了一个缓存类,网上找的那种,就是缓存到文件中,在有前台页面显示的情况下,缓存都能够显示出来,但是现在有个问题,对于以下后台的类,没有实际的页面(比如发邮件类),调用该缓存类,显示出来的内容是空,有没有人知道这个问题?
------解决方案--------------------
调用的缓存路径是否正确?
------解决方案--------------------
常见的缓存类都是拦截页面输出,进行缓存处理
也就是说只在输出时,缓存才起作用
或许还有其他用法,但至少你使用的缓存类不能实现你的设想
因为你没有提供相关信息

------解决方案--------------------
不能什么都用缓存类的,命中率低,反而会浪费资源。
------解决方案--------------------
文件读取速度一般比数据库快,使用文件缓存是对的,但是你要向文件提取数据你首先要放入数据。你这个文件是不是key-value形式存储的?取出来的信息是空的可能是没有对应的key值,所以找不到对应的数据。如果是同一个key前台能提取到数据,那么后台也必定能提取到数据(除非是在前台提取后自动删除该数据,或者是该数据已经过期,后者可能性很小,应为是文件存储没有运行php程序文件的内容是不会变的)。所以你关键看哈这个缓存的代码,搞清楚它怎么存储信息的。希望对你有帮助。