設計モデルの行動型モデル――3.1戦略モデル


strategy=$strategy;
    }
    //         
    public function getResult(){
        $this->strategy->AlgorithmInterface();
    }
}
//    ——   
class ContextImprove{
    public static function getResult($Algorithm){
        $str='ConcreteStrategy'.$Algorithm;
        $alg=new ReflectionClass($str);
        return $alg->newInstance()->AlgorithmInterface();
    }
}


//   
$context=new Context(new ConcreteStrategyA());
$context->getResult();

echo '
'; // —— echo ContextImprove::getResult('A');