> php教程 > php手册 > 简单的页面缓冲技术二

简单的页面缓冲技术二

WBOY
풀어 주다: 2016-06-13 10:28:35
원래의
1050명이 탐색했습니다.

我的具体实现的例子
  为了帮助大家有个感性认识,这里我给出在我的主页上实现的基于文件处理的方法。只有主要的处理代码,不完整。
$#@60;?
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 $#@60; $itmp);
10 $ctmp=filemtime(basename($PHP_SELF));
11 $cflag=$cflag | ($dtmp $#@60; $ctmp);
12 $ttmp=filemtime("template/content.ihtml");
13 $cflag=$cflag | ($dtmp $#@60; $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-$#@62;set_file("contentfile","content.ihtml");
35
36 $t-$#@62;set_var(
37 array(
38 "content"=$#@62;$content
39 ));
40
41 $t-$#@62;parse("outputcontent","contentfile");
42
43 $fp=fopen($tmpfile, "w");
44 if($fp)
45 {
46 flock($fp, 3);
47 fwrite($fp, $t-$#@62;get_var("outputcontent"));
48 flock($fp, 1);
49 fclose($fp);
50 }
51 $t-$#@62;p("outputcontent");
?$#@62;
  先向大家介绍一下我的目录结构:
  /---bin/ 执行程序目录
  | |--content.php3 用于处理文件显示的程序
   | |--template/ 用于存放模板文件的目录
   | |---content.ihtml 模板文件
   |-docs/ 数据文件
   |-tmp/ 存放缓冲文件
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 추천
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿