PHP输出缓存实例

动态、伪静态的网站,网站打开缓慢,那肯定是因为,你没有加入缓存,每次打开都要查询、请求、处理数据,最后才输出结果。PHP与HTML的区别,PHP需要处理请求,而HTML不需要处理请求,所以,从某种意义上说,HTML要比PHP打开要快得多。但很多时候,我们的网站需要用PHP输出,但又想达到HTML的输出效果。

没有缓存

PHP
  1. <?php
  2. echo '随便输出点啥,这个并没有缓存!';
  3. ?>

看上面的这个代码,没有查询、没有请求、没有处理数据,最简单粗暴的直接输出结果。如果你的网站,都是这种不需要处理数据的,那做不做文件缓存都一个样,效果都是打开快得一哔。但现实却不是这样的,我们既然用到了PHP文件输出,那这个文件肯定是动态查询、动态加载、动态输出、动态效果的,不需要动态加载的用HTML不是更香吗。

加入缓存

作为站长,作为一个技术仔,都想自己的网站,在打开的时候能够快点,总的来说就是越快越好。缓存有很多方式,下面,小千分享一个,自己写的PHP文件缓存效果,缓存时效是24小时,也就是缓存一天,在当天内,只要是加载一次以后,不管你怎么疯狂的刷新,都和HTML的输出效果一样。代码如下,不喜勿喷。

PHP
  1. <?php
  2. //先设置一个缓存文件 来保存当天缓存日期
  3. $cachefile = 'cache.txt';
  4. // 检查缓存文件是否存在
  5. if (!file_exists($cachefile)) {
  6.     //不存在就创建缓存文件
  7.     fopen($cachefile, 'w');
  8. }
  9. // 缓存文件 保存一天 获取当前日期
  10. $cachedate = date('Y-m-d');
  11. // 读取缓存文件的日期
  12. $cacheddate = file_get_contents($cachefile);
  13. // 检查缓存是否过期
  14. if ($cacheddate === $cachedate) {
  15. //缓存未过期,直接读取缓存文件并输出
  16. include 'cache.php';
  17. exit();
  18. } else {
  19. //缓存已经过期,开始执行下面代码
  20. //执行前 打开输出缓存
  21. ob_start();
  22. //这里是你要缓存的内容 开始
  23. echo '随便输出点啥,这个是有缓存的哦!';
  24. //这里是你要缓存的内容 结束
  25. //将缓存写入到PHP文件中
  26. file_put_contents('cache.php', ob_get_contents());
  27. //关闭输出缓存
  28. ob_end_clean();
  29. // 马上更新缓存日期为今天的日期
  30. file_put_contents($cachefile, $cachedate);
  31. //更新缓存文件成功 直接读取缓存文件并输出
  32. include 'cache.php';
  33. }
  34. ?>

对的,没错,PHP输出缓存文件效果,代码就是这么的简单,像这种加入缓存文件输出的,加载效果可以和HTML输出堪比美,发挥你的想象,你也可以把这个代码用得很有想法。

本文结束

评论专区

发表评论

评论列表(无评论)