miniSmarty 简易Smarty
简易的smarty 对新手理解smarty有帮助 源于itcast韩顺平老师smarty第2、3讲
简易的smarty 对新手理解smarty有帮助 源于itcast韩顺平老师smarty第2、3讲
<?php
class MyMiniSmarty{
public $template_dir = "./templates";
public $complie_dir = "./templates_c";
public $tpl_vars = array();
public function assign($tpl_var,$val = NULL){
if(!empty($tpl_var)){
$this->tpl_vars[$tpl_var] = $val;
}
}
public function display($tpl_file){
$tpl_file_path = $this->template_dir.$tpl_file;
$complie_file_path = $this->complie_dir."com_".$tpl_file.".php";
if (file_exists($tpl_file_path) || filemtime($tpl_file_path) < filemtime($complie_file_path)) {
$tpl_file_content = file_get_contents($tpl_file_path);
$pattern = array(
'/\{\s*\$([a-zA-Z0-0_]*)\s*\}/i'
);
$replace = array(
'<?php echo $this->tpl_vars["${1}"] ?>'
);
$new_content = preg_replace($pattern, $replace, $tpl_file_content);
try {
file_put_contents($complie_file_path, $new_content);
} catch (Exception $e) {
echo $e->getMessage();
}
include $complie_file_path;
}else {
return FALSE;
}
}
}
?>
- 上一篇:获取域名
- 下一篇:php实现九九乘法表
精彩图集
精彩文章






