品易云推流 关闭
文章详情页
文章 > PHP教程 > php命令模式如何理解

php命令模式如何理解

头像

小妮浅浅

2021-06-30 17:13:23894浏览 · 0收藏 · 0评论

1、把请求封装成一个对象,允许使用不同的请求来参数化客户。对请求进行排队或记录请求日志,并支持可撤销动作。

2、组成

命令抽象类,用来声明执行操作的接口。

具体命令类,将一个接收者对象绑定于一个动作,调用接收者相应的操作。

命令发送者,要求该命令执行这个请求。

命令接收者,知道如何实施与执行一个请求相关的操作,任何类都可能作为一个接收者。

客户端代码,创建一个具体命令对象并设定它的接收者。

实例

<?php
//命令抽象类
abstract class Command{
//执行方法
abstract function Excute();
}
 
//具体命令类-可以根据不同情况有多个继承具体类
class ConcreteCommand extends Command{
private $Receiver;
function __construct(Receiver $Receiver)
{
$this->Receiver = $Receiver;
}
function Excute()
{
$this->Receiver->DoSomething();
}
}
 
//接受者类
class Receiver{
//定义接受者要做的事情,可以有很多
function DoSomething()
{
echo "Receiver do something.";
}
}
 
//调用者
class Invoker{
private $Command;
function __construct(Command $Command)
{
$this->Command = $Command;
}
function Action()
{
$this->Command->Excute();
}
}
 
//调用
//不使用调用者类调用
$Receiver = new  Receiver();
$Command = new ConcreteCommand($Receiver);
$Command->Excute();
 
//使用调用者类
$Invoker = new Invoker($Command);
$Invoker->Action();
?>

以上就是php命令模式的理解,希望对大家有所帮助。更多php学习指路:php教程

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

底部广告图