本文实例讲述了PHP实现的策略模式。分享给大家供大家参考,具体如下:
比如说购物车系统,在给商品计算总价的时候,普通会员肯定是商品单价乘以数量,但是对中级会员提供8者折扣,对高级会员提供7折折扣,这种场景就可以使用策略模式实现:
<?php /** * 策略模式实例 * */ //抽象策略角色《为接口或者抽象类,给具体策略类继承》 interface Strategy { public function computePrice($price); } //具体策略角色-普通会员策略类 class GenernalMember implements Strategy { public function computePrice($price) { return $price; } } //具体策略角色-中级会员策略类 class MiddleMember implements Strategy { public function computePrice($price) { return $price * 0.8; } } //具体策略角色-高级会员策略类 class HignMember implements Strategy { public function computePrice($price) { return $price * 0.7; } } //环境角色实现类 class Price { //具体策略对象 private $strategyInstance; //构造函数 public function __construct($instance) { $this->strategyInstance = $instance; } public function compute($price) { return $this->strategyInstance->computePrice($price); } } //客户端使用 $p = new Price(new HignMember()); $totalPrice = $p->compute(100); echo $totalPrice; //70 ?>
更多关于PHP相关内容感兴趣的读者可查看本站专题:《php面向对象程序设计入门教程》、《PHP基本语法入门教程》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。
本文向大家介绍PHP实现的策略模式示例,包括了PHP实现的策略模式示例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了PHP实现的策略模式。分享给大家供大家参考,具体如下: 个人觉得设计模式只有在实际应用中才能够慢慢的去熟悉,到最后做到心中有模式,事事有模式,哈哈 例如:一个电商首页,可以根据登陆用户的性别不同显示不同的内容,比如广告和商品类别。 传统方法:在程序内部使用多个if,else
本文向大家介绍Java策略模式实现简单购物车功能,包括了Java策略模式实现简单购物车功能的使用技巧和注意事项,需要的朋友参考一下 策略模式是一种行为模式。用于某一个具体的项目有多个可供选择的算法策略,客户端在其运行时根据不同需求决定使用某一具体算法策略。 策略模式也被称作政策模式。实现过程为,首先定义不同的算法策略,然后客户端把算法策略作为它的一个参数。使用这种模式最好的例子是Collectio
本文向大家介绍学习php设计模式 php实现策略模式(strategy),包括了学习php设计模式 php实现策略模式(strategy)的使用技巧和注意事项,需要的朋友参考一下 一、意图 定义一系列的算法,把它们一个个封装起来,并且使它们可相互替换。策略模式可以使算法可独立于使用它的客户而变化 策略模式变化的是算法 二、策略模式结构图 三、策略模式中主要角色 抽象策略(Strategy)角色
本文向大家介绍php单例模式的简单实现方法,包括了php单例模式的简单实现方法的使用技巧和注意事项,需要的朋友参考一下 php单例模式的简单实现方法 首先我们要知道明确单例模式这个概念,那么什么是单例模式呢? 单例模式顾名思义,就是只有一个实例。 作为对象的创建模式, 单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例, 这个类我们称之为单例类。 单例模式的要点有三个: 一是
我正在学习Java编程。 我的任务是使用策略模式(LFU、LRU和2Q)编写3个缓存实现。在这一点上,我已经编写了LRU实现,无法考虑实现它的条件。 这是我的密码 请帮帮我
本文向大家介绍PHP简单装饰器模式实现与用法示例,包括了PHP简单装饰器模式实现与用法示例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了PHP简单装饰器模式实现与用法。分享给大家供大家参考,具体如下: 更多关于PHP相关内容感兴趣的读者可查看本站专题:《php面向对象程序设计入门教程》、《PHP基本语法入门教程》、《PHP网络编程技巧总结》、《PHP数组(Array)操作技巧大全》、《p