0514-86177077
9:00-17:00(工作日)
本文實例講述了php設計模式之策略模式應用。分享給大家供大家參考,具體如下:
策略模式
定義:
策略模式定義一系列的算法,將每個算法封裝起來,并讓它們可以相互裝換。策略模式讓算法獨立于使用它的客戶而獨立變化。
角色分析:
應用場景:
代碼實現(xiàn):
?php /** * Created by PhpStorm. * Author: zhaorui * Date: 2019/2/27 * Time: 10:55 */ header('Content-Type:text/html;charset=utf-8'); // 抽象策略接口 abstract class Strategy{ abstract function wayToSchool(); } //具體策略角色 class BikeStrategy extends Strategy{ function wayToSchool() { echo "騎自行車去上學".PHP_EOL; } } class BusStrategy extends Strategy{ function wayToSchool() { echo "乘公共汽車去上學".PHP_EOL; } } class TaxiStrategy extends Strategy{ function wayToSchool() { echo "坐出租去上學".PHP_EOL; } } // 環(huán)境角色 class Context{ private $strategy; function getStrategy($strategyName){ try{ $strategyReflection = new ReflectionClass($strategyName); $this->strategy = $strategyReflection->newInstance(); }catch (ReflectionException $e){ $this->strategy = ""; } } function goToSchool(){ $this->strategy->wayToSchool(); } } // 測試 $context = new Context(); $context->getStrategy('BusStrategy'); $context->goToSchool();
運行結果
乘公共汽車去上學
優(yōu)點:
缺點:
更多關于PHP相關內(nèi)容感興趣的讀者可查看本站專題:《php面向對象程序設計入門教程》、《PHP數(shù)組(Array)操作技巧大全》、《PHP基本語法入門教程》、《PHP運算與運算符用法總結》、《php字符串(string)用法總結》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家PHP程序設計有所幫助。
標簽:鷹潭 重慶 麗江 衡陽 巴彥淖爾 銅陵 臨沂 十堰
上一篇:PHP實現(xiàn)將上傳圖片自動縮放到指定分辨率,并保持清晰度封裝類示例
下一篇:php設計模式之裝飾模式應用案例詳解
Copyright ? 1999-2012 誠信 合法 規(guī)范的巨人網(wǎng)絡通訊始建于2005年
蘇ICP備15040257號-8