首页 > Web开发 > PHP教程 > 正文

php命令模式什么意思?php命令模式介绍

互联网 2019-09-23 11:10:36 0

命令模式(Command)是一种非常常用的设计模式,其本质是对命令进行封装,将发出命令的责任和执行命令的责任分割开,降低对象之间的耦合度,新的命令可以很容易地加入到系统中。


php命令模式什么意思?php命令模式介绍

命令模式之所以常用的优势就在于可以将请求发送者和接收者完全解耦,而系统解耦是系统的终极目标。

解耦之后调用某些对象的某些方法,并不知道请求的接收者是谁。(推荐学习:PHP编程从入门到精通)

物联网环境下人工智能发展迅速,现在的智能灯,只需要连接手机就可以轻松操控,冬天躺在床上轻松实施打开关闭。

代码:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

<?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(); // 关灯方法

代码:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

99

100

101

102

103

104

105

106

107

108

109

110

111

112

113

114

115

116

117

118

119

120

121

122

123

124

125

126

127

128

129

130

131

132

133

134

135

136

137

<?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();

    }

}

输出结果:

1

2

已帮您打开智能灯

已帮您关闭智能灯

以上就是php命令模式什么意思的详细内容,更多请关注web开发者其它相关文章!


  • 相关标签:php教程 PHP PHP学习
  • 版权归原作者所有,如果有侵犯到您的权益,请联系本站删除!
  • 相关文章


    专题推荐

    今日头条
  • 手机哪款好?8月值得买的手机就这四款 手机哪款好?8月值得买的手机就这四款
  • 七夕保命技能书送上 女朋友还有30秒到达战场 七夕保命技能书送上 女朋友还有30秒到达战场
  • 七夕保命技能书送上 女朋友还有30秒到达战场 七夕保命技能书送上 女朋友还有30秒到达战场
  • 七夕搞笑句子大全2019 七夕微信说说笑死人那种 七夕搞笑句子大全2019 七夕微信说说笑死人那种
  • 热门标签