首页  >  文章  >  php教程  >  php简单的自定义模板类

php简单的自定义模板类

WBOY
WBOY原创
2016-06-13 10:44:57745浏览

    class MyTpl { 
        private $template_dir; 
        private $compile_dir; 
        private $tpl_vars=array(); 
 
        public function __construct($template_dir="./templates", $compile_dir="./templates_c"){ 
            $this->template_dir=rtrim($template_dir,"/").'/'; 
            $this->compile_dir=rtrim($compile_dir, "/").'/'; 
        } 
 
        public function assign($tpl_var, $value=null){ 
            if($tpl_var!="") 
                $this->tpl_vars[$tpl_var]=$value; 
        } 
 
        public function display($fileName){ 
            $tplFile=$this->template_dir.$fileName; 
 
            if(!file_exists($tplFile)){ 
                return false; 
            } 
 
            $comFileName=$this->compile_dir."com_".$fileName.".php"; 
 
            if(!file_exists($comFileName) || filemtime($comFileName)                 $repContent=$this->tpl_replace(file_get_contents($tplFile)); 
 
                file_put_contents($comFileName, $repContent);    
            } 
 
            include $comFileName; 
             
        } 
 
        private function tpl_replace($content){ 
                $pattern=array( 
                        '/\/i' 
                    ); 
 
                $replacement=array( 
                    'tpl_vars["${1}"]; ?>' 
                    ); 
             
                $repContent=preg_replace($pattern, $replacement, $content); 
 
                return $repContent; 
        } 
 
    } 
?> 
摘自:enough_br的专栏

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn