php中的設計模式之 策略模式

2021-06-28 12:07:53 字數 671 閱讀 4341

<?php

/* 所謂策略模式是在不同的事件策略模式就是針對相同的行為,在不同的場景中擁有不同的演算法,將這些演算法封裝起來,

並且這些演算法是可以互換的,這樣就對客戶隱藏了相應演算法的實現細節,可以很方便的在執行時選擇具體的行為演算法(即策略)。

簡單的策略模式: 保安對於學生和老師進考場這個事件,可以分化出不同的策略,學生要檢視考試證據,老師放行

*/inte***ce strategy

/**對學生採取的策略

*/ class studentstrategy implements strategy

} /**

對老師採取的策略

*/ class teacherstrategy implements strategy

}// 情形

class testcheck

// 開始策略

public function startstrategy() }

$people = 'teacher';

switch($people)

$safepeople = new testcheck();

$safepeople ->setstrategy($strategy);

$safepeople ->startstrategy();

PHP設計模式之策略模式

策略模式 將一組特定的行為和演算法封裝成類,以適應某些特定的上下文環境,這種模式就是策略模式 使用策略模式實現ioc,依賴倒置,控制反轉 假如乙個電商 系統,針對不同的人群要跳轉到不同的商品類目,並且所有廣告位展示不同的廣告 1.不會因為上下文的改變而改變 傳統都是使用ifelse來判斷 2.如果新...

php設計模式之策略模式

在此模式中,演算法是從複雜類提取的 因而可以 方便地替換 例如,如果要更改搜尋引擎中排列頁的方法,則策略模式是乙個不錯的選擇。思考一下搜尋引擎的幾個部分 一部分遍歷頁面,一部分對每頁排列,另一部分基於排列的結果排序。在複雜的示例中,這些部分都在同乙個類中。通過使用策略模式,您可將排列部分放入另乙個 ...

PHP設計模式之策略模式

策略模式 將一組特定的行為和演算法封裝成類。以適應某些特定的上下文環境,這樣的模式就是策略模式 使用策略模式實現ioc,依賴倒置,控制反轉 假如乙個電商站點系統,針對不同的人群要跳轉到不同的商品類目。而且全部廣告位展示不同的廣告 1.不會由於上下文的改變而改變 傳統都是使用ifelse來推斷 2.假...