php自己写了一个模板

/*作者: 牛哄哄Q Q: 455703030*/function
template($template,$cacheFile,$set){is_readable($template) ||
exit(‘模板文件不存在!’);filemtime($template) @filemtime($cacheFile)
parse_template($template,$cacheFile);$inTemplate =
true;is_readable($cacheFile) ? include $cacheFile :
exit(‘无法读取缓存,缓存路径可能有误!’);}function
parse_template($template,$cacheFile=”){$content =
file_get_contents($template);$content =
preg_replace(‘//{/*([^/{/}]*)/*/}/’,”,$content);$content =
preg_replace(‘//$([A-Za-z0-9_]+)/’,’$set[/’//1/’]’,$content);$content
= preg_replace(‘//$/[([A-Za-z0-9_]+)/]/’,’$//1′,$content);$content
= preg_replace(‘//{/$([A-Za-z0-9_/[/]/’]+)/}/’,’? echo $//1;
?’,$content);$content = preg_replace(‘//{include/(([^/{/}]+)/)/}/’,’?
include //1; ?’,$content);$content =
preg_replace(‘//{echofile/(([^/{/}]+)/)/}/’,’? echo
file_get_contents(//1); ?’,$content);$content =
preg_replace(‘//{code/(([澳门新葡亰手机版,^/{/}]+)/)/}/’,’? //1; ?’,$content);$content
= preg_replace(‘//{if/(([^/{/}]+)/)/}/’,’? if (//1) {
?’,$content);$content = preg_replace(‘//{elseif/(([^/{/}]+)/)/}/’,’?
} elseif(//1) { ?’,$content);$content =
preg_replace(‘//{while/(([^/{/}]+)/)/}/’,’? while (//1) {
?’,$content);$content = preg_replace(‘//{foreach/(([^/{/}]+)/)/}/’,’?
foreach (//1) { ?’,$content);$content =
str_replace(array(‘{else}’,'{/if}’,'{/while}’,'{/foreach}’),array(‘?
}else{ ?’,’? } ?’,’? } ?’,’? } ?’),$content);if
(preg_match_all(‘//{template/(([^/{/}]+)/)/}/’,$content,$tplName)){foreach
($tplName[1] as $value) $tplContent[] = parse_template(eval(‘return
‘.$value.’;’));$content =
str_replace($tplName[0],$tplContent,$content);}if (” == $cacheFile)
return $content;@file_put_contents($cacheFile,’? true===$inTemplate ||
exit(/’非法访问!/’); ?’.$content);}

1,修复一个因为疏忽造成的小BUG,编译之后的代码少
了一个{符号,呵呵2,更改模板嵌套的编译模式,现在这种模式使用更简单方便,也更符合大家的习惯3,增加了一个新的功能,其实本来提供的功能,也可以实现此功能,但是毕竟不专业,用起来不方便。此功能用来直接输出一个静态的文件,我曾经做过测试,这样直接输出,效率要比include高的多的多此模板函数提供的标签及功能:1,添加注释{*
*}2,输出变量{$i}
//需要对变量进行格式化,可以使用{code()}标签来执行一个函数进行格式化输出3,包含一个动态文件{include()}4,包含一个静态文件{echofile()}5,嵌套一个模板{template()}6,判断,分支{if()}
{elseif()}{else} {/if}7,循环{while()}
{/while}{foreach()}{/foreach}8,执行一段PHP代码,包括赋值,函数等等等等{code()}有了这些东西,基本上就没有什么工作完成不了了。内附比较详细的使用说明