欢迎光临
我们一直在努力

简单的页面缓冲技术(二)-PHP教程,PHP函数

建站超值云服务器,限时71元/月

我的具体实现的例子

  为了帮助大家有个感性认识,这里我给出在我的主页上实现的基于文件处理的方法。只有主要的处理代码,不完整。

<?

1 $tmpfile="../tmp/".basename($request_uri);

2 $tmpfile=str_replace("?", "_", $tmpfile);

3 $tmpfile=str_replace("&", "_", $tmpfile);

4 if(file_exists($tmpfile))

5 {

6 $cflag=false;

7 $dtmp=filemtime($tmpfile);

8 $itmp=filemtime($incfile);

9 $cflag=$cflag | ($dtmp < $itmp);

10 $ctmp=filemtime(basename($php_self));

11 $cflag=$cflag | ($dtmp < $ctmp);

12 $ttmp=filemtime("template/content.ihtml");

13 $cflag=$cflag | ($dtmp < $ttmp);

14 }

15 else

16 $cflag=true;

17

18 if(!$cflag) //使用存在的文件

19 {

20 readfile($tmpfile);

21 exit;

22 }

23

24 //创建新的文件

25 include "template.class.php3";

26

27 $fp=fopen($incfile, "r");

28 $content=fread($fp, filesize($incfile));

29 fclose($fp);

30

31 //下面进行模版处理

32 $t = new template("template", "keep");

33

34 $t->set_file("contentfile","content.ihtml");

35

36 $t->set_var(

37 array(

38 "content"=>$content

39 ));

40

41 $t->parse("outputcontent","contentfile");

42

43 $fp=fopen($tmpfile, "w");

44 if($fp)

45 {

46 flock($fp, 3);

47 fwrite($fp, $t->get_var("outputcontent"));

48 flock($fp, 1);

49 fclose($fp);

50 }

51 $t->p("outputcontent");

?>

  先向大家介绍一下我的目录结构:

  /—bin/ 执行程序目录

  | |–content.php3 用于处理文件显示的程序

   | |–template/ 用于存放模板文件的目录

   | |—content.ihtml 模板文件

   |-docs/ 数据文件

   |-tmp/ 存放缓冲文件

 

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 简单的页面缓冲技术(二)-PHP教程,PHP函数
分享到: 更多 (0)

相关推荐

  • 暂无文章