欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

zuitu团购模板引擎浅析_PHP教程

程序员文章站 2022-06-10 12:53:51
...
接触过最土的朋友应该很熟悉 最土模板解析功能主要由 文件完成 ,就是通过正则的替换,捕获来完成而已,与smarty的原理类似。下面分析下他的正则替换。

template.php文件中有这段代码

  __parse(, 
      =  
     (!( = (           
      = ( '/^(\xef\xbb\xbf)/', '',  ); 
      = ("/\/ies", "__replace('')",       = ("/\{(\\\$[a-zA-Z0-9_\[\]\\\ \-\'\,\%\*\/\.\(\)\>\'\"\$\x7f-\xff]+)\}/s", "",       = ("/\\\$\{(.+?)\}/ies", "__replace('')",       = ("/\/ies", "__replace('')",       = ("/\/ies", "__replace('')",       = ("/\/is", "",  
     ( = 0;            = ("/\(.+?)\/ies", "__replace('\\3) { ?>\\4')",           = ("/\(.+?)\/ies", "__replace('\\3')",           = ("/\(.+?)\/ies", "__replace('\\2')",      
      
      = ("##i", '',  
     
     (!(,               
 
        
  __replace(      ('\"', '"',  }

现在对正则替换进行分析:

第8行

 = ( '/^(\xef\xbb\xbf)/', '',  ); 

是过滤掉windows平台下utf8文件的特殊字符 ï » ¿

第九行

 = ("/\/ies", "__replace('')", );

规则浅析: