この記事では主にPHPコマンドモードの詳細な説明と事例を紹介しますので、興味のある方は参考にしていただければ幸いです。
コマンド パターン (コマンド) は、非常に一般的に使用されるデザイン パターンです。
その本質は、コマンドをカプセル化し、コマンドを発行する責任とコマンドを実行する責任を分離し、新しいコマンドを簡単に追加できるようにすることです。システム。
コマンド モードの一般的に使用される利点は、リクエストの送信者と受信者を完全に分離できることであり、システムの分離がシステムの最終的な目標です。
分離後、特定のオブジェクトの特定のメソッドを呼び出すと、リクエストの受信者が誰であるかがわかりません。
モノのインターネット環境では、人工知能が急速に発展しており、スマートライトは携帯電話に接続するだけで簡単に制御でき、冬にはベッドに横たわりながら簡単にオン/オフできます。
<?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(); // 关灯方法
<?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(); } }
関連する推奨事項:
以上がphpコマンドモードの詳しい説明と事例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。