PHP設計模式系列 直譯器模式

2021-06-07 07:43:42 字數 536 閱讀 6876

直譯器模式 用於分析乙個實體的關鍵元素,並且針對每個元素提供自己的解釋或相應動作。直譯器模式非常常用,比如php的模板引擎 就是非常常見的一種直譯器模。

<?php

//直譯器模式 用於分析乙個實體的關鍵元素,並且針對每個元素提供自己的解釋或相應動作

//直譯器模式非常常用,比如php的模板引擎 就是非常常見的一種直譯器模式

class template

/*** 模板驅動-預設的驅動

* @param string $str 模板檔案資料

* @return string

*/private function init($str, $left, $right)

}$str = "這是乙個模板類,簡單的模板類,標題為:";

$template = new template;

echo $template->run($str);

參考:《php設計模式》aaron saray著

設計模式系列 直譯器模式

直譯器模式,給定乙個語言,定義它的文法的一種表示,並定義乙個直譯器,這個直譯器使用該表示來解釋語言中的句子。在直譯器模式中由於語法是由很多類表示的,當語法規則更改時,只需修改相應的非終結符表示式即可 若擴充套件語法時,只需新增相應非終結符類即可。特徵 為了解釋一種語言,而為語言建立的直譯器。給出乙個...

PHP設計模式 直譯器模式

直譯器模式 用於分析乙個實體的關鍵元素,並且針對每個元素提供自己的解釋或相應動作。直譯器模式非常常用,比如php的模板引擎 就是非常常見的一種直譯器模。直譯器模式 用於分析乙個實體的關鍵元素,並且針對每個元素提供自己的解釋或相應動作 直譯器模式非常常用,比如php的模板引擎 就是非常常見的一種直譯器...

設計模式系列之 直譯器模式

這種型別的設計模式屬於行為型模式,它他解決了方法的合理呼叫 直譯器模式用於對表示式 字串的解析 如espl 正規表示式等 可以通過自定義規則來使用直譯器建立一種語法簡易 如espl 直譯器需要的角色 解析器類 用來制定規則按情況呼叫不同的表示式類完成解析 抽象表示式類 在此類生成結果 具體表示式 類...