20.3.2 在PHP程序中使用模板
这一节通过一个具体实例来演示如何在PHP程序中使用模板文件。首先,需要定义一个模板文件,这里就使用20.3.1小节中的示例代码,将其按文件名temp.html保存。接下来编写PHP文件,用来处理模板,如下面的代码20-1所示。
代码20-1 在PHP程序中使用模板20-1.php
01 <?php
02 $template_file="temp.html";//模板文件
03
04 $fs=fopen($template_file,"r");//打开文件
05 $content=fread($fs,filesize($template_file));//读取文件内容
06 fclose($fs);//关闭文件
07
08 $content=print_page($content,"pagetitle","模板应用");
09 $page=print_page($content,"greetings","你好,这个页面由模板生成");
10 echo$page;
11
12 function print_page($temp_c,$temp_v,$str_c)
13 {
14 return ereg_replace("\{".$temp_v."\}",$str_c,$temp_c);
15 }
16 ?>
【代码解析】代码20-1在程序中打开一个模板文件,读出模板文件的内容。然后定义一个函数用来处理模板中的模板变量,如代码第12~15行所示,函数print_page()非常简单,只有一行代码,这行代码通过正则表达式替换函数将模板变量替换为程序中的实际数据。
通过浏览器访问20-1.php,可以看到如图20-2所示的效果。
虽然这个在PHP程序中使用模板变量的示例程序很小,但却体现了模板在PHP程序中的处理思想。当然实际的模板引擎要比这个复杂得多,也更能满足实际需要。本章的下一小节将会为读者介绍一个被PHP官方推荐使用的模板引擎,并通过一些实例讲解模板引擎的使用。