Que signifie le mode commande php ?

(*-*)浩
Libérer: 2023-02-24 16:38:01
original
1824 Les gens l'ont consulté

Le modèle de commande (Command) est un modèle de conception très couramment utilisé. Son essence est d'encapsuler les commandes, de séparer la responsabilité de l'émission des commandes et la responsabilité de l'exécution des commandes, et de réduire le couplage entre les objets. être facilement ajouté au système.

Que signifie le mode commande php ?

L'avantage du mode de commande couramment utilisé est qu'il peut complètement découpler l'expéditeur et le destinataire de la requête, et le système Le découplage est le but ultime du système.

Après découplage, certaines méthodes de certains objets sont appelées sans savoir qui est le destinataire de la requête. (Apprentissage recommandé : Programmation PHP du débutant à compétent)

L'intelligence artificielle se développe rapidement dans l'environnement de l'Internet des objets. De nos jours, les lumières intelligentes peuvent être facilement contrôlées en se connectant simplement à un téléphone mobile. , couché au lit en hiver Mettre en œuvre facilement l'ouverture et la fermeture.

Code :

<?php
 
header("Content-Type:text/html;charset=utf-8");
 
require_once "Command.php";
 
// 智能灯
$lamp = new Lamp(); 
 
// 开灯命令
$on = new onCommand($lamp);
// 关灯命令
$off = new offCommand($lamp);
 
// 控制器类  请求者 不用知道对象是谁
$_c = new Control($on,$off);
 
$_c->turnOn();  // 开灯方法
$_c->turnOff(); // 关灯方法
Copier après la connexion

Code :

<?php
// 智能灯类
Class Lamp
{
	/**
     * 开灯方法
     * @access public
     */
    public function TurnOn()
    {
        echo "已帮您打开智能灯<br/>";
    }
 
	/**
     * 关灯方法
     * @access public
     */
    public function TurnOff()
    {
    	echo "已帮您关闭智能灯<br/>";
    }
}
 
// 命令抽象总类
abstract Class ICommand
{
 
	/**
     * 抽象执行方法
     * @access public
     */
	abstract public function Execute();
}
 
// 开灯命令
Class onCommand extends ICommand
{
	/**
     * 智能灯对象
     * @var object private
     */
	private $_lamp;
 
	/**
     * 构造函数
     * @access public
     * @param  object  $lamp 智能灯对象
     */
	function __construct($lamp)
	{
		$this->_lamp = $lamp;
	}
 
	/**
     * 开灯执行方法
     * @access public
     */
    function Execute()
    {
         $this->_lamp->TurnOn();
    }
}
 
// 关灯命令
Class offCommand extends ICommand
{
	/**
     * 智能灯对象
     * @var object private
     */
	private $_lamp;
 
	/**
     * 构造函数
     * @access public
     * @param  object  $lamp 智能灯对象
     */
	function __construct($lamp)
	{
        $this->_lamp = $lamp;
	} 
 
	/**
     * 关灯执行方法
     * @access public
     */
    function Execute()
    {
    	$this->_lamp->TurnOff();
    }	
}
 
// 遥控器类
Class Control
{
	/**
     * 开灯命令对象
     * @var object private
     */
	private $_on;
 
	/**
     * 关灯命令对象
     * @var object private
     */
	private $_off;
 
	/**
     * 构造函数
     * @access public
     * @param  object  $on 开灯对象
     * @param  object  $off 关灯对象
     */	
	function __construct($on,$off)
	{
        $this->_on = $on;
        $this->_off = $off;
	}
 
	/**
     * 开灯函数
     * @access public
     */
	function turnOn()
	{
        $this->_on->Execute();
	}
 
	/**
     * 关灯函数
     * @access public
     */
	function turnOff()
	{
		$this->_off->Execute();
	}
}
Copier après la connexion

Résultat de sortie :

已帮您打开智能灯
已帮您关闭智能灯
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
php
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!