PHP设计模式系列 - 解释器模式

来源:互联网 发布:网络集成技术课后答案 编辑:程序博客网 时间:2024/05/16 12:53
  • 解释器模式

解释器模式 用于分析一个实体的关键元素,并且针对每个元素提供自己的解释或相应动作。解释器模式非常常用,比如PHP的模板引擎 就是非常常见的一种解释器模。

  • 代码:
[php] view plain copy
 print?
  1. <?php  
  2. //解释器模式 用于分析一个实体的关键元素,并且针对每个元素提供自己的解释或相应动作  
  3. //解释器模式非常常用,比如PHP的模板引擎 就是非常常见的一种解释器模式  
  4. class template {  
  5.   
  6.     private $left  = '<!--{';  
  7.     private $right = '}-->';  
  8.       
  9.     public function run($str) {  
  10.         return $this->init($str$this->left, $this->right);  
  11.     }  
  12.       
  13.     /** 
  14.      * 模板驱动-默认的驱动 
  15.      * @param  string $str 模板文件数据 
  16.      * @return string 
  17.      */  
  18.      private function init($str$left$right) {  
  19.         $pattern = array('/'.$left.'/''/'.$right.'/');  
  20.         $replacement = array('''');  
  21.         return preg_replace($pattern$replacement$str);  
  22.      }  
  23. }  
  24. $str = "这是一个模板类,简单的模板类,标题为:<!--{Hello World}-->";  
  25. $template = new template;  
  26. echo $template->run($str);  
0 0