这是一个php模板class,之前我一直使用(EaseTemplate:https://www.syst.com/data/et/1.html),后因不支持php7,然后就重写了。
XTiyTpl和EaseTemplate语法类似,功能相对少了一些,主要是自用,因现在不经常用php,所以维护不及时,请谅解。
php版本:php5.3以上
**XTiyTpl文件小,运行速度快。支持模板变量、循环、判断、php函数、php代码段。**
使用说明请查看:doc.html
PHP:
<?phpiclude('lib/XTiyTpl.class.php');$tpl = ew XTiyTpl(array('rootPath' => dirame(__FILE__),'webPath' => '/test/xtpl','tplPath' => 'tpl','cachePath' => 'cache','extName' => '.html','regGlobal' => true,'mergeIclude' => false));$list = array(array('ame' => '张三','list' => array(array('sub_ame' => 'aaa1'),array('sub_ame' => 'aaa2'))),array('ame' => '李四','list' => array(array('sub_ame' => 'bbb1'),array('sub_ame' => 'bbb2'))));$tpl->setVar('a', 1);$tpl->setVar($list);$tpl->setVar( array( 'var1'=>'123456', 'var2'=>'abcdefg',));$tpl->out('test/test');模板:
<!-- #iclude file="/ic/header.html" --><div class="item"><div class="title">变量</div><div class="ifo"><div class="preview">变量1:{$var1}<br>变量2:{$var2}-${var2}<br>变量2:${substr($var1, 0, 3)}</div></div></div><div class="item"><div class="title">循环</div><div class="ifo"><div class="preview"><ul><!-- $list AS $k => $v --><li>${k}--${v['ame']}<ul><!-- $list AS $v2 --><li>${v2['ame']}</li><!-- ed --></ul></li><!-- ed --></ul><!-- while:$i<10 --> <!--{$i++;}-->${i},<!-- ed --></div></div></div><div class="item"><div class="title">逻辑判断</div><div class="ifo"><div class="preview"><!-- IF[$a==1] --> 变量a为${a} <!-- ELSE IF[$a==2] --> 变量a为${a} <!-- ELSE --> 变量a为空 <!-- END --> </div></div></div><div class="item"><div class="title">内部引用</div><div class="ifo"><div class="preview"><!-- #iclude file="/ic2/header_sub.html" -->{ic:/ic2/header_sub}<!-- ic:ic2/header_sub --> {iclude file="/ic2/header_sub"}</div></div></div><div class="item"><div class="title">路径解析</div><div class="ifo"><pre class="code">通过 $opt['path_replace'] = array('images'); 配置相对路径,程序会自动加上绝对路径。这样的好处是在做页面时,页面可直接浏览器预览</pre><div class="preview">src="images/aaa.pg"</div></div></div><div class="item"><div class="title">嵌入PHP代码</div><div class="ifo"><div class="preview">时间处理:{ru:}echo date('Y-m-d H:i',time()){/ru} <br> 时间处理2:<!-- ru: -->echo date('Y-m-d H:i:s',time())<!-- /ru --> <br> 条件判断1:{ru:}if($a==1){echo '成立';}else{echo '失败';}{/ru} <br> 条件判断2:<!-- ru: -->if($a==1){echo '成立';}else{echo '失败';}<!-- /ru --> <br> 条件判断3:${($a==1)?'成立':'失败'}<br> 条件判断4:<!--{echo ($a==1)?'成立':'失败';}--> </div></div></div>
评论