
1. Encapsular a solicitação em um objeto, permitindo que diferentes solicitações sejam utilizadas para parametrizar clientes. Enfileirar ou registrar solicitações e oferecer suporte a ações que podem ser revertidas.
2. Compor classes abstratas de comando, classes de comando concretas, etc.
A classe abstrata de comando é usada para declarar a interface para executar operações.
Uma classe de comando específica vincula um objeto receptor a uma ação e chama a operação correspondente do receptor.
O remetente do comando, solicitando que o comando execute esta solicitação.
Um receptor de comando sabe como realizar operações relacionadas à execução de uma solicitação. Qualquer classe pode servir como receptor.
Código do cliente que cria um objeto de comando específico e define seu receptor.
Exemplo
<?php
//Comando classe abstrata classe abstrata Comando{
//Executa a função abstrata do método Excute();
}
//Classe de comando concreto - pode haver múltiplas classes concretas herdadas de acordo com diferentes situações class ConcreteCommand extends Command{
receptor $ privado;
função __construct(Receptor $Receptor)
{
$this->Receptor = $Receptor;
}
funçãoExcute()
{
$this->Receptor->DoSomething();
}
}
//Classe receptora classe Receiver{
//Defina o que o receptor precisa fazer, pode haver muitas funções DoSomething()
{
echo "Receptor faz alguma coisa.";
}
}
//Invocador da classe Invocador{
comando $ privado;
função __construct(Comando $Comando)
{
$este->Comando = $Comando;
}
funçãoAção()
{
$this->Command->Excute();
}
}
//Ligar//Ligar sem usar a classe chamadora $Receiver = new Receiver();
$Command = new ConcreteCommand($Receptor);
$Command->Excute();
//Use a classe chamadora $Invoker = new Invoker($Command);
$Invoker->Ação();
?>O texto acima é a compreensão do modo de comando PHP, espero que seja útil para todos.