PHP设计模式之策略模式
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP设计模式之策略模式相关的知识,希望对你有一定的参考价值。
<?php //策略模式定义:定义一系列的算法,把它们一个个封装起来, 并且使它们可相互替换。本模式使得算法的变化可独立于使用它的客户。 /** * 定义策略接口 */ interface StrategyInterface{ //强制策略类实现的方法 public function method(); } /** * 抽象策略类 */ abstract class Strategy implements StrategyInterface{ //强制策略子类实现该方法 abstract public function method(); public function init(){ echo "我是公共方法".PHP_EOL; } } class Strategy1 extends Strategy{ //实现接口方法 public function method(){ echo "我是策略方法1".PHP_EOL; } } class Strategy2 extends Strategy{ //实现接口方法 public function method(){ echo "我是策略方法2".PHP_EOL; } } /** * 客户端类 */ class Client{ public function getMethod(Strategy $Strategy){ $Strategy->method(); } } $obj = new Client(); $obj -> getMethod(new Strategy1()); $obj -> getMethod(new Strategy2());
以上是关于PHP设计模式之策略模式的主要内容,如果未能解决你的问题,请参考以下文章