使用模板文件首先包含该模板文件
include(”…..”);
创建模板对象
$tpl=new MyTpl();
Html占位符 <title><{ 变量 }><title/>;
给HTML中得占位符赋值
$tpl->assign()获取PHP中变量的值并且放到变量里
assign();需要两个参数
1、$tpl_var变量名,出现再模板文件HTML中变量名称,HTML中得占位符
2、$value在HTML中显示的值,来至于PHP文件
$tpl->assign(“titlename”,$title);
调用模板文件
$tpl->display(“a.html”);
从模板文件中获取<{ $... }>结构
替换成<?php echo $... ;?>
$content
function tpl_replace($content){
/* preg_replace();
* mixed preg_replace(正则表达式,替换成<?php echo ?>,被替换对象)
* 定义模板文件中<{$title}>结构的正则表达式
*
* $pattern=’/正则表达式/’;
* $pattern=’/\<\{\s*\$([a-zA-Z\x7f-\xff][0-9a-zA-Z_\x7f-\xff]*)\S\}\>/i’; //i不区分大小写 $[a-zA-Z\x7f-\xff] $后边跟的是第一个字母
*
}
$replacement=’<?php echo $title; ?>’
$[1]获取([a-zA-Z\x7f-\xff][0-9a-zA-Z_\x7f-\xff]*)正则表达式中小括号的东西
$replacement=’<?php echo $this->tpl_vars[“${1}”] ; ?>’
替换后返回一个新的HTLM文件
preg_replace($pattern,$replacement,$content);
return $repcontent;
}
Function display($fileName){
//讲tpl_replace方法里返回的新文件保存到 templates_c下
//$fileName-----*html 或者*.tpl
//$this->template_dir.=”./templates”;
//$this->template_dir.$fileName;=” ./template/a.html”
$tplFile=$this->template_dir.$fileName;
$this->tpl_replace(file_get_contents($tplFile));
//将该编译后文件存储到templates_c里 com_*****.php
$comFileName=$this->compile_dir.”com_”.basename($tplFile).”.php”;
//将变量$repcontent写入到com_a.php文件
}