标签:上下文环境 struct env ons protected 模式 上下 obj 特定
<?php
//策略模式
//将一组特定的算法或行为 封装成一个类,以适应上下文环境
//策略的接口文件 约定策略的行为 针对一种情况 产生具体的策略
interface Policy
{
function showAd();
}
class Female implements Policy
{
public function showAd()
{
echo __CLASS__.‘ policy‘;
}
}
class Male implements Policy
{
public function showAd()
{
echo __CLASS__.‘ policy‘;
}
}
//环境类 将具体的算法分离开
class Env
{
protected $obj=null;
public function __construct(Policy $obj)
{
$this->obj=$obj;
}
public function doSomeThing()
{
$this->obj->showAd();
}
}
$a = new Env(new Male());
$a->doSomeThing();
标签:上下文环境 struct env ons protected 模式 上下 obj 特定
原文地址:http://www.cnblogs.com/mingqinz/p/7003824.html