首页 > 代码库 > 七. PHP模式设计----执行及描述任务
七. PHP模式设计----执行及描述任务
1. 解析器模式 //解析器内容类 //用于存放表达式的运算结果,并且能根据传入的表达式返回当初记录的结果 class InterpreterContext{ private $expressionstore=array(); //将对象放进array里面,索引号是对象ID号 function replace(Expression $exp,$value){ $this->expressionstore[$exp->getKey()]=$value; } function lookup(Expression $exp){ return $this->expressionstore[$exp->getKey()]; } } abstract class Expression{ private static $keyCount=0; private $key; abstract function interpret(InterpreterContext $context); //每一个对象都有一个唯一的key function getKey(){ if(!isset($this->key)){ $this->key=++self::$keyCount; } return $this->key; } } //字符串 class LiteralExpression extends Expression{ private $value; function __construct($value){ $this->value=http://www.mamicode.com/$value;>七. PHP模式设计----执行及描述任务
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。