您所在的位置:首页 -> IT资讯开发php设计模式之策略模式详述

开发php设计模式之策略模式详述

来源:本站编辑    发布日期:2013-06-20    已有 1080 人浏览过此信息

策略模式就是指定义一系列算法(本文指算法A、算法B、算法C),,把它们一个个封装起来,并且使它们可相互替换,使用得算法的变化可独立于使用它的客户。学文培训黄老师在这里给大家分享一下PHP的设计模式之一——策略模式,源代码如下:

/** *
定义支持算法的接口
 * */ 
abstract class Strategy { 
abstract public function AlgorithmInterface();
}
 
class ConcreateStratA extends Strategy { 
public function AlgorithmInterface() { 
echo “算法A”;
}
}
 
class ConcreateStratB extends Strategy  { 
public function AlgorithmInterface() { 
echo “算法B”;
}
}
 
class ConcreateStratC extends Strategy  { 
public function AlgorithmInterface() { 
echo “算法C”; 
}
}
 
class Context  { 
private $_StrObj;
 
public function __construct($strobj)  { 
$this->_StrObj = $strobj;
}
 
public function ContextInterface()  { 
$this->_StrObj->AlgorithmInterface();
}
}
 

//不同用户调用不同的算法,获得不同的输出结果。

$context = new Context(new ConcreateStratA); 
$context->ContextInterface(); 
$context = new Context(new ConcreateStratC);
$context->ContextInterface(); 
$context = new Context(new ConcreateStratB);
$context->ContextInterface();
?>

至此,我们的php策略模式就分享完了,欢迎大家讨论研究。 学文培训正在开设PHP培训,分为初级PHP培训、中级PHP培训、高级PHP培训,我们开设的其它培训还有:淘宝运营培训、淘宝美工培训、网页设计培训等等,欢迎大家咨询报读。

编辑:Admin