PHP 设计模式之策略模式
生活随笔
收集整理的這篇文章主要介紹了
PHP 设计模式之策略模式
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
典型的應(yīng)用場(chǎng)景:當(dāng)男性用戶訪問(wèn)網(wǎng)站上顯示男性相關(guān)的類目和廣告,當(dāng)女性用戶訪問(wèn)網(wǎng)站時(shí)顯示女性相關(guān)的類目和廣告,或默認(rèn)訪問(wèn)時(shí)顯示指定相關(guān)的類目和廣告
<?phpinterface UserStrategy {function showAd();function showCategory(); }class FemaleStrategy implements UserStrategy {function showAd(){echo "female ad\n";}function showCategory(){echo "female category\n";} }class MaleStrategy implements UserStrategy {function showAd(){echo "male ad\n";}function showCategory(){echo "male category\n";} }class OtherStrategy implements UserStrategy {function showAd(){echo "other ad\n";}function showCategory(){echo "other category\n";} }class Page {private $strategy;function index(){$this->strategy->showAd();$this->strategy->showCategory();}function setStrategy(UserStrategy $strategy){$this->strategy = $strategy;} }$page = new Page;if($argv[1] == 1) {$strategy = new FemaleStrategy; } elseif ($argv[1] == 2) {$strategy = new OtherStrategy; } else {$strategy = new MaleStrategy; }$page->setStrategy($strategy); $page->index();總結(jié)
以上是生活随笔為你收集整理的PHP 设计模式之策略模式的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: PHP 基本原则
- 下一篇: PHP 设计模式之装饰器模式