PHP设计模式之策略模式原理与用法实例分析
发布:smiling 来源: PHP粉丝网 添加日期:2021-11-15 10:40:53 浏览: 评论:0
这篇文章主要介绍了PHP设计模式之策略模式原理与用法,结合实例形式较为详细的分析了策略模式的概念、原理及php实现与使用策略模式的相关操作技巧,需要的朋友可以参考下。
本文实例讲述了PHP设计模式之策略模式原理与用法,分享给大家供大家参考,具体如下:
策略模式(Strategy Pattern)
策略模式是对象的行为模式,用意是对一组算法的封装。动态的选择需要的算法并使用。
策略模式指的是程序中涉及决策控制的一种模式。策略模式功能非常强大,因为这个设计模式本身的核心思想就是面向对象编程的多形性思想。
策略模式的三个角色:
1. 抽象策略角色
2. 具体策略角色
3. 环境角色(对抽象策略角色的引用)
实现步骤:
1. 定义抽象角色类(定义好各个实现的共同抽象方法)
2. 定义具体策略类(具体实现父类的共同方法)
3. 定义环境角色类(私有化申明抽象角色变量,重载构造方法,执行抽象方法)
策略模式的代码实例:
- <?php
- abstract class baseAgent { //抽象策略类
- abstract function PrintPage();
- }
- //用于客户端是IE时调用的类(环境角色)
- class ieAgent extends baseAgent {
- function PrintPage() {
- return 'IE';
- }
- }
- //用于客户端不是IE时调用的类(环境角色)
- class otherAgent extends baseAgent {
- function PrintPage() {
- return 'not IE';
- }
- }
- class Browser { //具体策略角色
- public function call($object) {
- return $object->PrintPage ();
- }
- }
- $bro = new Browser ();
- echo $bro->call ( new ieAgent () );
- ?>
运行结果:IE
就在编程领域之外,有许多例子是关于策略模式的,例如:
如果我需要在早晨从家里出发去上班,我可以有几个策略考虑:我可以乘坐地铁,乘坐公交车,走路或其它的途径,每个策略可以得到相同的结果,但是使用了不同的资源。
Tags: PHP设计模式 PHP策略模式
- 上一篇:PHP反射实际应用示例
- 下一篇:实例说明js脚本语言和php脚本语言的区别
相关文章
- ·PHP设计模式-单例模式学习笔记(2015-12-10)
- ·php设计模式之单例模式实例分析(2021-05-14)
- ·PHP设计模式之装饰者模式代码实例(2021-05-26)
- ·PHP设计模式之适配器模式代码实例(2021-05-26)
- ·PHP 设计模式系列之 specification规格模式(2021-07-05)
- ·PHP设计模式之注册树模式分析(2021-09-01)
- ·PHP设计模式之装饰器模式实例详解(2021-09-03)
- ·PHP设计模式之PHP迭代器模式讲解(2021-11-13)
- ·PHP设计模式之简单工厂和工厂模式实例分析(2021-11-14)
- ·PHP设计模式之抽象工厂模式实例分析(2021-11-14)
- ·PHP设计模式之单例模式定义与用法分析(2021-11-14)
- ·php设计模式之单例模式用法经典示例分析(2021-12-19)
- ·php设计模式之适配器模式原理、用法及注意事项详解(2021-12-22)
- ·php设计模式之策略模式应用案例详解(2021-11-26)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)